在一个项目中,我的同事创建了一个静态库,例如liba.a,它与app链接.
在liba.a中,他将libc malloc()覆盖为其所有者版本.
我创建了一个共享库libs.so,它也与app链接.
问题是当我的libs.so与app链接时,我的libs.so中使用的malloc()将是liba.a中的那个,
不是标准libc.so中的那个,这会导致问题.
然后,我想将libc.a静态链接到我的libs.so,我为gcc使用了-static -shared -fPIC标志.
但我总是得到arm-2012.03 / bin /../ lib / gcc / arm-none-linux-gnueabi / 4.6.3 /../../../../ arm-none-linux-gnueabi / bin / ld:arm-2012.03 / bin /../ arm-none-linux-gnueabi / libc /usr/lib / libc.a(dl-tsd.o)(.text 0x14):共享对象中不允许R_ARM_TLS_LE32重定位.
有没有人有这个想法?
谢谢你.