在ubuntu 18.04 使用命令 git clone 然后出错了
symbol lookup error: libhogweed.so.4: undefined symbol: __gmpn_cnd_add_n
1、很奇怪在出错前几天还用过git clone,一切正常,系统也没有打补丁。
2、百X下发现文章Ubuntu18.04报__gmpn_cnd_add_n相关错误
提到过相关错误上文的解决办法是将/usr/local/lib/目录下libgmp.so*所有文件删除
sudo rm /usr/local/lib/libgmp.so*
简单粗暴但的确好用。
3、回忆下前2天的确自行编译过libgmp,当时没有多想直接将编译后的文件安装在/usr/local/lib/目录下了
使用命令
ldd /usr/lib/x86_64-linux-gnu/libhogweed.so.4
结果如下:
…
libgmp.so.10 => /usr/local/lib/libgmp.so.10
…
网文说libgmp没有多大作用,我也不能确定。
后来我花了点时间找到了解决办法:
Ubuntu中有libgmp10,重新安装一下就可以了。
当然重新安装前须删除之前的文件
sudo rm /usr/local/lib/libgmp.so*
sudo apt-get --reinstall install libgmp10
然后运行
ldd /usr/lib/x86_64-linux-gnu/libhogweed.so.4
结果如下:
…
libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f0b697d0000)
…
可以看见 /usr/lib/x86_64-linux-gnu/libhogweed.so.4 链接的库已经发生改变。
最后运行git clone 没有出错了问题解决。