Gentoo Archives: gentoo-alt

From: Moritz Schlarb <mail@××××××××××××××.de>
To: gentoo-alt@l.g.o
Subject: [gentoo-alt] Re: Building python fails on SLES10.1 (python-2.7.2)
Date: Sat, 08 Oct 2011 12:24:23
Message-Id: j6pfcr$b4h$1@dough.gmane.org
In Reply to: Re: [gentoo-alt] Building python fails on SLES10.1 (python-2.7.2) by Martin Luessi
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I've got it now!

The problem was, that the module-libraries weren't even linked to the
corresponding system libraries

TL;DR: export LDFLAGS="-L/lib" && emerge python

On a native gentoo system, I got:
 $ ldd crypt.so
...
	libcrypt.so.1 => /lib/libcrypt.so.1 (0xb7690000)
...
 $ equery b /lib/libcrypt.so.1
 * Searching for /lib/libcrypt.so.1 ...
sys-libs/glibc-2.12.2 (/lib/libcrypt-2.12.2.so)
sys-libs/glibc-2.12.2 (/lib/libcrypt.so.1 -> libcrypt-2.12.2.so)

 $ ldd nis.so
...
	libnsl.so.1 => /lib/libnsl.so.1 (0xb7713000)
...
 $ equery b /lib/libnsl.so.1
 * Searching for /lib/libnsl.so.1 ...
sys-libs/glibc-2.12.2 (/lib/libnsl.so.1 -> libnsl-2.12.2.so)
sys-libs/glibc-2.12.2 (/lib/libnsl-2.12.2.so)

But crypt_failed.so and nis_failed.so in the prefix build dir just
linked to the default libraries (which I excluded up there) and not the
ones that define the symbols they need esepecially.

Propably it would be better to do that with -rpath but I haven't figured
that out yet :D

Am 24.09.2011 23:57, schrieb Martin Luessi:
> On Sat, Sep 24, 2011 at 11:21 AM, justin <jlec@g.o> wrote: >> On 9/24/11 4:58 PM, Moritz Schlarb wrote: >>> Hi! >>> >>> On SLES 10.1 (glibc-2.4), building Python fails because the modules >>> crypt and nis cannot be built. >>> I worked around this by editing the ebuild to exclude these from >>> building, hoping that they were not needed for any critical >>> functionality, but maybe there's some other things that can be done! >>> >>> >>> I get this at the end: >>> >>> Python build finished, but the necessary bits to build these modules >>> were not found: >>> _sqlite3 _tkinter bsddb185 >>> dl imageop sunaudiodev >>> To find the necessary bits, look in setup.py in detect_modules() for the >>> module's name. >>> >>> >>> Failed to build these modules: >>> crypt nis >>> >>> The warnings during build are: >>> >>> building 'nis' extension >>> x86_64-pc-linux-gnu-gcc -pthread -fPIC -fno-strict-aliasing -O2 -pipe >>> -fomit-frame-pointer -fwrapv -I/homes/2/schlarbm/gentoo/usr/include -L/ho >>> mes/2/schlarbm/gentoo/lib -L/homes/2/schlarbm/gentoo/usr/lib -DNDEBUG >>> -I/homes/2/schlarbm/gentoo/usr/include -I. -IInclude -I./Include -I/tmp/s >>> chlarbm/gentoo/portage/dev-lang/python-2.7.2/work/Python-2.7.2/Include >>> -I/tmp/schlarbm/gentoo/portage/dev-lang/python-2.7.2/work/Python-2.7.2 >>> -c >>> /tmp/schlarbm/gentoo/portage/dev-lang/python-2.7.2/work/Python-2.7.2/Modules/nismodule.c >>> -o >>> build/temp.linux-x86_64-2.7/tmp/schlarbm/gentoo/portage/dev-lang/python-2.7.2/work/Python-2.7.2/Modules/nismodule.o >>> x86_64-pc-linux-gnu-gcc -pthread -shared -Wl,-O1 -L. -Wl,-O1 -L. >>> -fno-strict-aliasing -O2 -pipe -fomit-frame-pointer -fwrapv >>> -I/homes/2/schlarbm/gentoo/usr/include -L/homes/2/schlarbm/gentoo/lib >>> -L/homes/2/schlarbm/gentoo/usr/lib -DNDEBUG -I. -IInclude -I./Include >>> build/temp.linux-x86_64-2.7/tmp/schlarbm/gentoo/portage/dev-lang/python-2.7.2/work/Python-2.7.2/Modules/nismodule.o >>> -L/homes/2/schlarbm/gentoo/usr/lib -L. -lpython2.7 -o >>> build/lib.linux-x86_64-2.7/nis.so >>> *** WARNING: renaming "nis" since importing it failed: >>> build/lib.linux-x86_64-2.7/nis.so: undefined symbol: yp_get_default_domain >>> building 'crypt' extension >>> x86_64-pc-linux-gnu-gcc -pthread -fPIC -fno-strict-aliasing -O2 -pipe >>> -fomit-frame-pointer -fwrapv -I/homes/2/schlarbm/gentoo/usr/include -L/ho >>> mes/2/schlarbm/gentoo/lib -L/homes/2/schlarbm/gentoo/usr/lib -DNDEBUG >>> -I/homes/2/schlarbm/gentoo/usr/include -I. -IInclude -I./Include -I/tmp/s >>> chlarbm/gentoo/portage/dev-lang/python-2.7.2/work/Python-2.7.2/Include >>> -I/tmp/schlarbm/gentoo/portage/dev-lang/python-2.7.2/work/Python-2.7.2 - >>> c >>> /tmp/schlarbm/gentoo/portage/dev-lang/python-2.7.2/work/Python-2.7.2/Modules/cryptmodule.c >>> -o build/temp.linux-x86_64-2.7/tmp/schlarbm/gentoo >>> /portage/dev-lang/python-2.7.2/work/Python-2.7.2/Modules/cryptmodule.o >>> x86_64-pc-linux-gnu-gcc -pthread -shared -Wl,-O1 -L. -Wl,-O1 -L. >>> -fno-strict-aliasing -O2 -pipe -fomit-frame-pointer -fwrapv >>> -I/homes/2/schlarb >>> m/gentoo/usr/include -L/homes/2/schlarbm/gentoo/lib >>> -L/homes/2/schlarbm/gentoo/usr/lib -DNDEBUG -I. -IInclude -I./Include >>> build/temp.linux-x86_ >>> 64-2.7/tmp/schlarbm/gentoo/portage/dev-lang/python-2.7.2/work/Python-2.7.2/Modules/cryptmodule.o >>> -L/homes/2/schlarbm/gentoo/usr/lib -L. -lpytho >>> n2.7 -o build/lib.linux-x86_64-2.7/crypt.so >>> *** WARNING: renaming "crypt" since importing it failed: >>> build/lib.linux-x86_64-2.7/crypt.so: undefined symbol: crypt >>> >>> Is there something that can be done? >>> >>> >>> >> >> There is an open bug: >> >> https://bugs.gentoo.org/show_bug.cgi?id=381163 >> >> > > I had the same problem on CentOS. As a workaround I disabled the crypt > and nis modules in the ebuild > >
- -- Moritz Schlarb -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJOkEDmAAoJEEXT29373YiIdI8H/31QLWsSdoxeK6fmeSDoaT3o 0gPi8z4giVKGsjMsy7UXWp0PboLZ0u9diz1xV3qD/Sx1TjujlOOGCxPUUPFO1rg0 wlUO58kK6I8kSuDFcvTMP3CKN2Wghvu1wJ8CmWtd92peX61FbQKb3ovCf+3K/cMe jwLawjVE8IwFZI6UU83ZNXl+GHQQuNv3tm4rIJeGI/5LpvYmtrvusR2JLQHk1xqJ ZQIhhwtPTwiezLLsjwOBJJw4dUXp8AdVI+MARZyTUxKUFjHrplIYqKXJ6ri9ws3u y6GSllAw4AxIF+uFKLbTCv9e8rHCqqH++koa8tnTAxVADTJDCWZsruNGTPOocKs= =HUin -----END PGP SIGNATURE-----

Replies

Subject Author
[gentoo-alt] Re: Building python fails on SLES10.1 (python-2.7.2) Fabian Groffen <grobian@g.o>