[Python-Dev] Solaris family and 64 bits compiling

Jesus Cea jcea at jcea.es
Tue Nov 23 00:41:19 CET 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 22/11/10 23:05, "Martin v. Löwis" wrote:
>> PS: Martin, is there any reason to restrict the solaris 10 buildslaves
>> to 32 bits, beside the said problems?.
> 
> I don't see that as a restriction. I have to make a choice, and there
> are sooo many choices to make:
> - gcc vs. SunPRO
> - 32-bit vs. 64-bit
> - GNU make vs. /usr/ccs/bin/make
> 
> I picked the combination which was most easy to setup, and is therefore
> likely to be used by most users (except for those who think 64-bit
> is somehow "better" than 32-bit, when it is actually the other way
> 'round - IMO).

Do not think this is a personal attack. Not at all. I am deploying 32
and 64 bits buildslaves (in the same machine) and feeling the pain. You
are far more experiences than me with buildbots and python. I want to
know if I am missing something.

> As for configuration, I personally prefer that setting CC indicates
> what type of build you want. Set CC to "gcc -m64" to indicate a
> 64-build. Ideally, you will *not* have to adjust library paths, since
> the other compiler will know on its own where to search things.

The problem is not with system library paths. Compilers overcome that.
The problem is with things like "/usr/local/lib" and hardcoded library
paths in Python.

For example, checking
<http://www.python.org/dev/buildbot/all/builders/AMD64%20OpenIndiana%203.x/builds/8/steps/test/logs/stdio>:

"""
gcc -shared -m64
build/temp.solaris-2.11-i86pc-3.2-pydebug/export/home/buildbot/64bits/3.x.cea-indiana-amd64/build/Modules/readline.o
- -L/usr/lib/termcap -L/usr/local/lib -lreadline -lncursesw -o
build/lib.solaris-2.11-i86pc-3.2-pydebug/readline.so
ld: fatal: file /usr/local/lib/libncursesw.so: wrong ELF class: ELFCLASS32
ld: fatal: file processing errors. No output written to
build/lib.solaris-2.11-i86pc-3.2-pydebug/readline.so
collect2: ld returned 1 exit status
"""

The "-L/usr/local/lib" should be "-L/usr/local/lib/64". An example of many.

- -- 
Jesus Cea Avion                         _/_/      _/_/_/        _/_/_/
jcea at jcea.es - http://www.jcea.es/     _/_/    _/_/  _/_/    _/_/  _/_/
jabber / xmpp:jcea at jabber.org         _/_/    _/_/          _/_/_/_/_/
.                              _/_/  _/_/    _/_/          _/_/  _/_/
"Things are not so easy"      _/_/  _/_/    _/_/  _/_/    _/_/  _/_/
"My name is Dump, Core Dump"   _/_/_/        _/_/_/      _/_/  _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQCVAwUBTOr/n5lgi5GaxT1NAQLzogP/Sb2VMe7UwK/YeB8/cQSxhuoKeNRre0pZ
XCJDePusysqI3uXBHmH8vitEIILmUKd5kQ6vsFwErPIry7ikl2fbDHe7eQgNr2HK
o5Xcul36bqtuKWGkDV+gIyBH/m9k4pkvc7Lfp3mvR7yiYTBB75V/azt64XSTC9si
7QjjetX5wnA=
=NCtE
-----END PGP SIGNATURE-----


More information about the Python-Dev mailing list