【发布时间】:2011-04-02 16:41:32
【问题描述】:
上下文:我可以创建一个链接到静态库的共享对象库,在 32 位 Linux 上没有任何问题。当我在 64 位 linux 上尝试相同的构建时,我看到了这个链接器错误:
- 在制作共享对象时,不能使用针对“本地符号”的重定位 R_X86_64_32S;用 -fPIC 重新编译
这个错误在网络上很常见。解决方案是使用位置无关代码 (-fPIC) 编译静态链接库。
我不明白为什么 32 位版本不需要这样做。有人可以帮忙吗?
【问题讨论】:
标签: linux 64-bit g++ linker 32-bit