1. 需求和来源
在执行g2o相关文件时,出现错误:
error while loading shared libraries: libg2o_core.so: cannot open hared object file: No such file or directory
在默认情况下,编译器只会使用/lib
和/usr/lib
这两个目录下的库文件
通过源码包进行安装时,如果不指定--prefix
会将库安装在/usr/local
目录下
而又没有在文件/etc/ld.so.conf
中添加 /usr/local/lib
这个目录
这样虽然安装了源码包,但是使用时仍然找不到相关的.so
库,就会报错
也就是说系统不知道安装了源码包
2. 解决办法
在/etc/ld.so.conf
里添加绝对路径/usr/local/lib
打开ld.so.conf
文件
$ sudo gedit /etc/ld.so.conf
在该文件最后直接另起一行,直接写路径
/usr/local/lib
最后将修改写入缓存
$ sudo ldconfig
完事,讲道理的话一切就正常
谢谢!