Python-2.2.1, Solaris7, make test fails...

Hugh Sasse Staff Elec Eng hgs at dmu.ac.uk
Thu Apr 18 13:06:32 EDT 2002


On 18 Apr 2002, Martin v. [iso-8859-1] Löwis wrote:

> Hugh Sasse Staff Elec Eng <hgs at dmu.ac.uk> writes:
>
> > cc -# -G build/temp.solaris-2.7-sun4u-2.2/socketmodule.o -L/usr/local/ssl/lib -L/usr/local/lib -lssl -lcrypto -o build/lib.solaris-2.7-sun4u-2.2/_socket.so
>
> Alright, so it does link SSL (and SSL is likely in a useful version, also).
>
> > I can't tell if that worked:
> >
> > >>> import socket
        [...]
> >     from _socket import *
> > ImportError: ld.so.1: ./python: fatal: relocation error: file /home/hgs/Python-2.2.1/build/lib.solaris-2.7-sun4u-2.2/_socket.so: symbol __eprintf: referenced symbol not found
>
> That is the problem: The SSL libraries refer to a symbol __eprintf,
> which originates from compiling the SSL libraries with GCC. GCC
> defines this symbol in libgcc.a, which is implicitly linked always.

OK,
>
> Now, when you link _socket.so with SunPRO, libgcc.a is not implicitly
> linked, hence the error.

Yes, that follows.
>
>
> > How old is acceptable ( before I disclose the version number publicly!!
> > :-) )
>
> It turns out that this theory was only partially true; the SSL version
> is fine, but the compiler the wrong one. You have the following

That (version) is encouraging.
> options (all alternative):
>
> 1. Build Python with GCC.
> 2. Rebuild OpenSSL with SunPRO.
> 3. Explicitly link libgcc.a to _socket.so, by editing Modules/Setup
> 4. Build without SSL support, by editing Modules/Setup.

I'll try out the configure patch, and go with 1.
>
> HTH,

Yes, it is a lot clearer now.
> Martin
>
        Thank you.
        Hugh






More information about the Python-list mailing list