linux在编译文件时报错:
./slam_sample: error while loading shared libraries: libslam_common.so: cannot open shared object file: No such file or directory
错误显示的是没有找到 lib* .so文件,而我们的目录下明明是有的,原因是缺少动态链接库的路径,因此我们需要将此动态链接库的路径添加进去,具体原因可以参考https://blog.csdn.net/xqhrs232/article/details/104136141
:
export LD_LIBRARY_PATH=/home/jie/package/slam_sdk/lib86:$LD_LIBRARY_PATH
之后重新编译即可。
这里可以使用 echo $LD_LIBRARY_PATH
来验证动态链接库是否添加成功;
此外,需要注意的是,这种添加方式只是对当前用户有效,也只是临时进行了修改,在当前窗口生效。
如果想永久生效需要修改 ~/.bashrc文件或者/etc/profile,并在末尾追加 export LD_LIBRARY_PATH=命令行路径:$LD_LIBRARY_PATH
。
具体文件的生效范围可以参考这篇博客https://blog.csdn.net/K_K_yl/article/details/119756206