[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: recompile with -fPIC error with 4.1 but not with 4.0



* Martin Michlmayr <tbm@cyrius.com> [2006-04-08 13:21]:
> > /build/tbm/caudium-1.4.7/smartlink gcc -shared -fPIC -R/usr/lib -L/usr/lib -R/usr/local/lib -L/usr/local/lib -R/usr/X11R6/lib -L/usr/X11R6/lib -o _Caudium.so caudium.o nb_send.o getdate.o datetime.o entparse.o scratchpad.o    /usr/lib/gcc/x86_64-linux-gnu/4.1.0/libgcc.a -lc /usr/lib/gcc/x86_64-linux-gnu/4.1.0/libgcc.a 
> > /usr/bin/ld: caudium.o: relocation R_X86_64_PC32 against `is_safe' can not be used when making a shared object; recompile with -fPIC
> > /usr/bin/ld: final link failed: Bad value
> > collect2: ld returned 1 exit status

I only see this error with GCC 4.1, not with 4.0.  Kurt Roeckx thinks
it might be a compiler bug.  Can someone confirm?  (I also just found
a package where 4.1 works but 4.2 shows up a PIC error)

15:08 < Q_> caudium.o seems to be build using -fPIC in the official
 buildd log.  (-fPIC has no effect at link time.)
15:10 < Q_> is_safe() is static, so it shouldn't show up in caudium.o's
 symbol table at all.
15:10 < Q_> tbm: Looks like a compiler bug to me.

-- 
Martin Michlmayr
http://www.cyrius.com/



Reply to: