我在 Ubuntu 10.10 上,刚刚将 opencv 升级到 2.4.2。
问题是,每次我打开一个新的 shell 并尝试编译和运行时,它都会编译但由于以下错误而无法运行:
./a.out: error while loading shared libraries: libopencv_calib3d.so.2.4: cannot open shared object file: No such file or directory
据我所知,这个文件位于 /usr/local/lib/!
我可以通过预先运行以下命令来使其运行:
export LD_LIBRARY_PATH=/usr/local/lib
我该如何修复此问题?
答案1
/usr/local/lib
LD_LIBRARY_PATH
不在默认的 Ubuntu 路径中。您需要将其添加到环境变量的末尾/etc/environment
。重启后新路径才会生效。
您还可以在 ~/.bashrc 中根据每个用户进行设置
示例(/etc/environment)
LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib
示例(~/.bashrc)
export LD_LIBRARY_PATH="/lib:/usr/lib:/usr/local/lib"