解决该报错需要注意一个问题:
自己opencv版本是否为3.4
如果是locate libopencv_high_gui.so.3.4
如果opencv版本不对那么你的环境中是找不到的
如果之前可以使用那么就是你的opencv安装了更高的版本:
你需要进入你的darknet项目下:
make clean
sudo ldconfig
make ----重新编译
注意:我出现该问题是因为我改动了我的opencv版本:4.5.3
所以我重新编译后出现:
./darknet: error while loading shared libraries: libopencv_highgui.so.4.5: cannot open shared object file: No such file or directory
这个时候因为你的opencv版本是4.5.3
所以它去会找这个版本的库
locate libopencv_highgui.so.4.5.3
/home/bb/.local/share/Trash/expunged/1278732157/install/lib/libopencv_highgui.so.4.5
/home/bb/.local/share/Trash/expunged/1278732157/install/lib/libopencv_highgui.so.4.5.3
/home/bb/opencv-4.5.3/build/lib/libopencv_highgui.so.4.5
/home/bb/opencv-4.5.3/build/lib/libopencv_highgui.so.4.5.3
/home/bb/opencv-4.5.3/install/lib/libopencv_highgui.so.4.5
/home/bb/opencv-4.5.3/install/lib/libopencv_highgui.so.4.5.3
/usr/local/opencv-4.5.3/lib/libopencv_highgui.so.4.5
/usr/local/opencv-4.5.3/lib/libopencv_highgui.so.4.5.3
cd /etc/ld.so.conf.d/
====该文件中存在opencv.conf这个文件
写入你自己opencv编译(make install
)后生成的lib文件路径
例:
/usr/local/lib
/home/smile/opencv3.4.0/build/lib
sudo ldconfig
./darknet
usage: ./darknet 成功