[Zope-Perl] Can't import perl.so

Stephen Harrison stephen@nipltd.com
Tue, 24 Oct 2000 12:00:35 +0100


Gisle Aas wrote:
> 
> Stephen Harrison <stephen@nipltd.com> writes:
> 
> > >>> import perl
> > Traceback (innermost last):
> >   File "<stdin>", line 1, in ?
> > ImportError: ld.so.1: python: fatal: relocation error: file
> > /space/stephen/Python-1.5.2/lib/python1.5/site-packages/perl.so: symbol
> > __floatdidf: referenced symbol not found
> 
> I don't know what this is.

A long time ago, Gisle Aas wrote:
> 
> Harry Danilevsky <hdanilevsky@siichi.com> writes:
> 
> > 2. python setup.py build (or install) wants to use
> > ld to create perl.so. The problem is, it really
> > should use gcc (and I use gcc, not Sun cc)
> > not ld, so that gnu C library will be used later, not Sun library
> > (if I use ld I get unresolved references, e.g. __floatdidf)
> > This has nothing to do with perl/python, but rather distutils.
> > Is there some config parameter I can set to tell distutils
> > to use gcc, not ld as linking command ?
> 
> distutils will pick of these things from the
> /usr/lib/python1.5/config/Makefile (modified by a different py version
> and/or prefix).  That should give you the same compiler/linker that
> python was built with in the first place.

I found that I could change the command used for linking when compiling
python.
Before running ./configure, set LDSHARED="gcc -shared".  This will then
be used instead of "ld -G".  This means that when running setup.py, it
will use gcc.

However, even using this newly compiled python, I still get the
unresolved reference above...

and more recently, Gisle Aas wrote:
> 
> I am not sure I have had a success report from Solaris after we
> introduced the thread specific context struct to support the
> MULTI_PERL build option.  It makes the source rely on pthreads.

Unfortunately, I don't know enough about the innards of perl/python to
know if __floatdidf is anything to do with threading or not.

-- 
Stephen Harrison            stephen@nipltd.com
New Information Paradigms   www.nipltd.com