OpenCV -如何优先考虑在/home编译的OpenCV库,而不是使用Eclipse c++ IDE从/usr/lib

OpenCV - how to prioritize opencv libraries compiled in /home over those from /usr/lib/ using Eclipse C++ IDE

本文关键字:OpenCV Eclipse usr lib IDE c++ 何优先 编译 home      更新时间:2023-10-16

我想在Linux中使用Eclipse IDE在c++中设置一个OpenCV项目。

首先,我使用我的/home/目录中OpenCV网站上提到的说明编译了我自己的OpenCV版本。在此之后,我想按照他们的说明使用Eclipse IDE设置一个基本的显示图像项目。

然而,我使用的是OpenSUSE 12.2,我在/usr/中有一个较旧的预安装版本的OpenCV,当我构建项目并使用ldd命令应用于生成的二进制文件检查OpenCV的链接库时,它指出了/usr/lib64/的库文件。

为了从我的主库指向编译的库文件,我必须修改.bashrc文件中的LD_LIBRARY_PATH环境变量:

export LD_LIBRARY_PATH=/home/user/OpenCV/release/lib/:$LD_LIBRARY_PATH

之后,我用重新初始化的.bashrc文件从终端启动Eclipse IDE。在这一步之后,它工作了。但是,是否有一种方法可以将Eclipse IDE中的/home/路径优先于/usr/路径,而不是使用./bashrc的技巧?

尝试在设置LD_PRELOAD环境变量后运行程序,指向您想要首先加载的库。

你可以准备一个脚本来启动你的程序:

export LD_PRELOAD=./your_library.so
./your_program