/usr/bin/ld: */linux_x32/lib/libhpsocket.a(HPSocket.o): unrecognized relocation (0x2b) in section `.text'
/usr/bin/ld: final link failed: Bad value
在网上一番搜索后, 基本确定是ld链接器版本过低造成的。我的系统是 ubuntu 14.04
1、查看我的当前版本:
root@ubuntu:# ld -v
GNU ld (GNU Binutils) 2.24
2、下载所需版本
http://ftp.gnu.org/gnu/binutils/
3、编译安装
解压后执行安装脚本
脚本链接https://blog.csdn.net/ACK_ACK/article/details/123988288
4、备份与修改
备份原系统中的ld链接器,发现是软连接, 使用ls /usr/bin/ld -al 原文件,发现指向了ld.bfd,将二者备份,使用刚编译的替换。
5、验证
root@ubuntu:~# ld -v
GNU ld (GNU Binutils) 2.26.20160125
再次编译程序成功。