Build error on x86_64

Quentin Spencer qspencer at ieee.org
Mon Dec 19 19:40:01 UTC 2005


I recently got the following error building ufsparse on x86_64 for 
development:

+ make -f Makefile 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=nocona -fPIC' libldl.a
gcc -c -O ldl.c -o ldl.o
ar cr libldl.a ldl.o
ranlib libldl.a
++ ls ldl.o
+ gcc -shared -Wl,-soname,libldl.so.1 -o libldl.so.1.2 ldl.o
/usr/bin/ld: ldl.o: relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
ldl.o: could not read symbols: Bad value
collect2: ld returned 1 exit status

I don't understand this. The -fPIC flag was used to build ldl.o, so why 
is the linker telling me to recompile with -fPIC? As far as I can tell, 
the parts of the spec file and tar ball are unchanged since the last 
release, so the only thing different would be gcc. Is it possible gcc 
4.1 is causing this?

-Quentin




More information about the fedora-extras-list mailing list