|Subject:||Re: libtool rearranging library paths|
|Date:||Fri, 2 Dec 2005 06:48:13 -0500|
* Christopher Hulbert wrote on Fri, Dec 02, 2005 at 03:41:41AM CET:
> I have a some fortran code compiled by libtool into a static (convenience
> archive). Later I compile a C source file into a shared library linking
> against the fortran library. Since automake/libtool have no knowledge that
> the objects are from fortran, I add in the necessary fortran libraries. The
> problem I get is with PIC. libtool is changing the order of my library
> paths and picking up a non-PIC PGI fortran library. I have fought with
> libtool for days and cannot figure out why. I can provide the debug output
> if necessary, but here are the few commands that show the rearranging. Note
> that in the libtool --mode=link command /usr/local/pgi/linux86-64/6.0/libso
> is before /usr/local/pgi/linux86-64/6.0/lib, but in the actual command
> executed, the order is reversed, Also, why is libtool not passing the PIC
> flag to the pgcc command? I told it to use PIC and it uses PIC in the
> compile stage. NOTE that this only happens on 64-bit platform because the
> 32-bit platform has only one directory.
/bin/sh ../libtool --version
and if that is not 1.5.20, please update the package to use 1.5.20.
We've fixed bugs in the PGI handling code. Also please note the exact
PGI version -- they've fixed some bugs in the v6.0-5 version I believe.
If both is current, then please rerun the link command with --debug, and
send the output, preferably packed (bzip2, gzip), along with
'../libtool --config' output.
By the way:
> I have fought with libtool for days and cannot figure out why.
I'm sorry. Next time just write a mail after a couple of hours. ;-)
> /bin/sh ../libtool --tag=CC --mode=link pgcc -O0 -Wall -g --exceptions -m64
> -g -no-undefined -module -avoid-version -shrext .mexa64
> -Wl,--wrap,malloc,--wrap,calloc,--wrap,free,--wrap,assert -L../libislmex
> -L../libscatsmex -pthread -shared
> -o llh2ecef.la -rpath
> /home/chulbert/ISLtools_v1.2/i686-pc-linux-gnu/mex/geo_mex llh2ecef_la-
> llh2ecef.lo -lscatsmex -L../../libscats -lscats -L../../libseke -lseke
> -L../../libscatsio -lscatsio -L/apps/lib64 -lvsip /apps/lib64/libz.a
> -L/usr/local/pgi/linux86-64/6.0/libso -L/usr/local/pgi/linux86-64/6.0/lib
> -L/usr/lib64 -L/usr/lib/gcc/x86_64-redhat-linux/4.0.0 -lpgf90 -lpgf90_rpm1
> -lpgf902 -lpgf90rtl -lpgftnrtl -lnspgc -lpgc -lm -L/apps/lib64 -lvsip
> -L/usr/local/matlab71/bin/glnxa64 -lmx -lmex -lmat -lm -lm
|[Prev in Thread]||Current Thread||[Next in Thread]|