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

Re: Bug#531939: FTBFS on mipsel due to missing -fPIC



David Daney wrote:
Luk Claes wrote:
Giuseppe Iuculano wrote:
Hi,

Luk Claes ha scritto:
mips and mipsel do now also need the -fPIC compilation flag to make sure that shared objects only contain position independent code. c++ -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Wcast-align -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-long-long -pedantic -g -O2 -DDEBIAN -fshort-wchar -pthread -pipe -DNDEBUG -DTRIMMED -O2 -fno-strict-aliasing -g -fPIC -shared -Wl,-z,defs -Wl,-h,libxpcom_core.so -o libxpcom_core.so pldhash.o nsCOMPtr.o nsComponentManagerUtils.o nsDebug.o nsID.o nsIInterfaceRequestorUtils.o nsINIParser.o nsMemory.o nsTraceRefcnt.o nsWeakReference.o nsGREGlue.o nsVersionComparator.o nsTHashtable.o nsTArray.o nsGenericFactory.o nsXPComInit.o nsStringAPI.o -Wl,--as-needed -Wl,--whole-archive ../../dist/lib/libxpcomds_s.a ../../dist/lib/libxpcomio_s.a ../../dist/lib/libxpcomcomponents_s.a ../../dist/lib/libxpcomthreads_s.a ../../dist/lib/libxpcomproxy_s.a ../../dist/lib/libxpcombase_s.a ../../dist/lib/libxptcall.a ../../dist/lib/libxptinfo.a ../../dist/lib/libxpt.a ../../dist/lib/libxptcmd.a ../../dist/lib/libstring_s.a -Wl,--no-
w
h
ole-archive -L/usr/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lgio-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -ldl -lm
/usr/bin/ld: ../../dist/lib/libxptcmd.a(xptcinvoke_asm_mips.o): relocation R_MIPS_HI16 against `__gnu_local_gp' can not be used when making a shared object; recompile with -fPIC ../../dist/lib/libxptcmd.a(xptcinvoke_asm_mips.o): could not read symbols: Bad value

The -fPIC is included, or am I missing something?

Hmm, very strange. Is this a mips specific bug in binutils?


No, the symbol __gnu_local_gp is generated by GCC.

*All* modules linked into a shared library must be compiled with -fPIC *and* you must not use -mshared.


s/-mshared/-mno-shared/  Better proofreading is in order.


It would appear that these requirements were not met when xptcinvoke_asm_mips.o (which is a member of ../../dist/lib/libxptcmd.a) was compiled.


David Daney




Reply to: