我知道之前有人问过类似的问题,但没有任何建议有帮助。
我正在尝试在 Ubuntu 15.10 中使用 C++ 编译 OpenCV 项目。我可以在 Netbeans 中正确运行该项目。但是我应该将其发送给将使用命令行的人。我可以用以下行编译程序:
g++ -ggdb -o convert *.cpp \`pkg-config --cflags --libs opencv\`
Run Code Online (Sandbox Code Playgroud)
convert为可执行文件选择的名称在哪里。执行此行后没有问题。但是当我跑
./convert "image1.tif" "image2.tif"
我得到:
./convert: error while loading shared libraries: libopencv_imgcodecs.so.3.2: cannot
open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)
在我的 .cpp 文件中,我有:
#include "/usr/local/include/opencv2/highgui/highgui.hpp"
Run Code Online (Sandbox Code Playgroud)
该文件libopencv_imgcodecs.so.3.2在我的/usr/local/lib文件夹中。我尝试-L/usr/local/lib输入命令行,但这没有帮助。也许这个文件路径需要在命令行中按特定顺序排列?顺序对 很重要pkg-config --cflags --libs opencv,它必须在 -o convert *.cpp 之后。