解决:./pose_graph_gtsam: error while loading shared libraries: libmetis-gtsam.so: cannot open shared o

 报错如下:

        出现该问题的原因是找不到安装的第三方共享库,默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件,通常通过源码包进行安装时,如果不指定--prefix,会将库安装在/usr/local/lib目录下;当运行程序需要链接动态库时,提示找不到相关的.so库,会报错。也就说,/usr/local/lib目录不在系统默认的库搜索目录中,需要将目录加进去。

1.进入root模式

sudo -i

2.用vim打开/etc/ld.so.conf文件,在"include ld.so.conf.d/*.conf"下方增加"/usr/local/lib"

~# vim /etc/ld.so.conf
“usr/local/lib"

解决:./pose_graph_gtsam: error while loading shared libraries: libmetis-gtsam.so: cannot open shared o_第1张图片

 3.输入命令/sbin/ldconfig -v,把新共享库目录加入到共享库配置文件/etc/ld.so.conf中。

~# /sbin/ldconfig -v

操作成功,程序正常运行。

解决:./pose_graph_gtsam: error while loading shared libraries: libmetis-gtsam.so: cannot open shared o_第2张图片

每一个Bug都值得记录,加油! 

参考资料: 

(48条消息) Linux中error while loading shared libraries错误解决办法_齐天大圣~~的博客-CSDN博客_error whileicon-default.png?t=M3C8https://blog.csdn.net/hankerbit/article/details/83834349?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165025306316781685399259%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=165025306316781685399259&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-83834349.142^v9^pc_search_result_cache,157^v4^control&utm_term=error+while+loading+shared+libraries%3A&spm=1018.2226.3001.4187Error while loading shared libraries: xxx — 解决方案 - 知乎 (zhihu.com)icon-default.png?t=M3C8https://zhuanlan.zhihu.com/p/428011742

你可能感兴趣的:(SLAM环境搭建,c++,ubuntu)