arm linux 加载.a,如何将libc.a链接到arm-linux中的共享库中使用arm-none-linux-gnueabi-gcc...
生活随笔
收集整理的這篇文章主要介紹了
arm linux 加载.a,如何将libc.a链接到arm-linux中的共享库中使用arm-none-linux-gnueabi-gcc...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在一個項目中,我的同事創建了一個靜態庫,例如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重定位.
有沒有人有這個想法?
謝謝你.
總結
以上是生活随笔為你收集整理的arm linux 加载.a,如何将libc.a链接到arm-linux中的共享库中使用arm-none-linux-gnueabi-gcc...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 调试总结
- 下一篇: linux 从光盘安装数据,LINUX访