clang and static linking?
Steve Kargl
sgk at troutmask.apl.washington.edu
Thu Nov 8 23:25:03 UTC 2012
Upgraded my amd64 system, yesterday. Needed to rebuild one
of my projects, and hit
/usr/local/openmpi-1.6.3/bin/mpif90 -static -O2 -pipe -march=native -mtune=native -funroll-loops -ftree-vectorize -Wall -rpath /usr/local/lib/gcc46 -I/home/kargl/modules -o sasmp sasmp.f90 -L/home/kargl/lib -L. -L/usr/local/lib -L. -loa -lm90 -llapack -lblas
//usr/lib/libc.a(isnan.o): In function `isnanf':
/usr/src/lib/libc/gen/isnan.c:(.text+0x40): multiple definition of `__isnanf'
//usr/lib/libm.a(s_isnan.o):/usr/src/lib/msun/src/s_isnan.c:(.text+0x0):
first defined here
collect2: ld returned 1 exit status
*** [sasmp] Error code 1
Stop in /usr/home/kargl/trunk/oa.
Can't rebuild gcc46 due to clang issue.
Rebuilding openmpi does not help as openmpi uses gfortran46.
Maybe there's a library problem.
Error clang base/gcc
yes libc,libm
yes libm libc
no libc libm
no libc,libm
libm.a compiled with clang
% nm /usr/lib/libm.a | grep isnan
U __isnanl
U __isnanf
U __isnanl
U isnan
U __isnanf
U isnan
U isnanf
s_isnan.o:
0000000000000000 T __isnanf
0000000000000030 T __isnanl
0000000000000000 W isnanf
U isnan
libm.a compiled with /usr/lib/gcc
troutmask:fvwm:kargl[232] nm /usr/lib/libm.a | grep isnan
U __isnanl
U __isnanf
U __isnanl
U __isnanf
s_isnan.o:
0000000000000000 T __isnanf
0000000000000030 T __isnanl
0000000000000000 W isnanf
--
Steve
More information about the freebsd-current
mailing list