Re: [arm-gnu] Shared library without dependencies
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [arm-gnu] Shared library without dependencies



On 5/16/10 6:35 PM, Bernd Clausen wrote:
Hi,

Hopefully someone can help me. This is very frustrating.

I want to compile a shared library without any dependencies for
Android (math lib und stdlib should be statically link).

I have tried: arm-none-linux-gnueabi-gcc -shared
-Wl,-soname,$(VERLIBNAME) -o $@ $(MODULES) -static -lm -lstdc++ but I
get an "R_ARM_TLS_LE32 relocation not permitted in shared object"
error message back...

Are you building $(MODULES) with -fpic?

The fact that your library seems to use Local Executable TLS model (TLS_LE32, which is only allowed when building executables) suggests that your code is compiled without -fpic/-fPIC.


Does anyone know how to build a shared library without ANY
dependencies? I can compile and run a test program by statically
linking everything in the executable but I need a shared library to
call it from another shared library (build with Android NDK)...

BTW, we at CodeSourcery are working on adding Android support to our professional tools.

Regards,

--
Maxim Kuvyrkov
CodeSourcery
maxim@xxxxxxxxxxxxxxxx
(650) 331-3385 x724