报错信息:
../darknet: error while loading shared libraries: libopencv_highgui.so.3.2: cannot open shared
经过安装数据库的折腾,丢失了libopencv_highgui.so.3.2:
,导致darknet用不了,解决如下:
1、查看运行darknet需要哪些依赖库:
ldd darknet
dj@dj:~/dingjing/darknet$ ldd darknet
linux-vdso.so.1 (0x00007fff1fb4e000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f419ad0c000)
libopencv_highgui.so.3.2 => not found
libopencv_videoio.so.3.2 => not found
libopencv_imgcodecs.so.3.2 => not found
libopencv_imgproc.so.3.2 => not found
libopencv_core.so.3.2 => not found
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f419a983000)
libcudart.so.9.0 => /usr/local/cuda-9.0/lib64/libcudart.so.9.0 (0x00007f419a716000)
libcublas.so.9.0 => /usr/local/cuda-9.0/lib64/libcublas.so.9.0 (0x00007f41972e0000)
libcurand.so.9.0 => /usr/local/cuda-9.0/lib64/libcurand.so.9.0 (0x00007f419337c000)
libcudnn.so.7 => /usr/local/cuda-9.0/lib64/libcudnn.so.7 (0x00007f41805f6000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f41803de000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f41801bf000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f417fdce000)
/lib64/ld-linux-x86-64.so.2 (0x00007f419b478000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f417fbca000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f417f9c2000)
上图中那些not found的就是找不到的库。很明显这些都是opencv的库,这说明现在opencv的路径需要配置。接下来,定位一下这些库的位置。
locate libopencv_highgui.so.3.2
locate libopencv_videoio.so.3.2
locate libopencv_imgcodecs.so.3.2
locate libopencv_imgproc.so.3.2
locate libopencv_core.so.3.2
并没有找到任何文件,于是又换一种方法,使用以下命令查找包含共享库libopencv_core.so.3.2
的文件夹:
sudo find / -name "libopencv_highgui.so.3.2*"
别人可能得到了结果:/usr/local/lib/libopencv_core.so.3.2
,但我还是一无所获。
2、无需重新安装opencv,只需重装libopencv-highgui-dev
正当我打算重新安装opencv的时候,看到了ianfhunter的回答,试了以下,果然奏效,跑完下面这句命令,再跑./darknet命令,成功!!!
sudo apt-get install libopencv-highgui-dev
跑一下试试,出的内容太多了:
dj@dj:~/dingjing/darknet$ ldd darknet
linux-vdso.so.1 (0x00007ffc17bc6000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f2323b6c000)
libopencv_highgui.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.3.2 (0x00007f2323960000)
libopencv_videoio.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_videoio.so.3.2 (0x00007f2323729000)
libopencv_imgcodecs.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_imgcodecs.so.3.2 (0x00007f23234f0000)
libopencv_imgproc.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.3.2 (0x00007f2322f9f000)
libopencv_core.so.3.2 => /usr/lib/x86_64-linux-gnu/libopencv_core.so.3.2 (0x00007f2322b64000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f23227db000)
libcudart.so.9.0 => /usr/local/cuda-9.0/lib64/libcudart.so.9.0 (0x00007f232256e000)
libcublas.so.9.0 => /usr/local/cuda-9.0/lib64/libcublas.so.9.0 (0x00007f231f138000)
libcurand.so.9.0 => /usr/local/cuda-9.0/lib64/libcurand.so.9.0 (0x00007f231b1d4000)
libcudnn.so.7 => /usr/local/cuda-9.0/lib64/libcudnn.so.7 (0x00007f230844e000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f2308236000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f2308017000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f2307c26000)
/lib64/ld-linux-x86-64.so.2 (0x00007f23242d8000)
libgtk-3.so.0 => /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 (0x00007f230731f000)
libgdk-3.so.0 => /usr/lib/x86_64-linux-gnu/libgdk-3.so.0 (0x00007f2307029000)
libcairo.so.2 => /usr/lib/x86_64-linux-gnu/libcairo.so.2 (0x00007f2306d0c000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007f2306ae8000)
libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007f2306894000)
libglib-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f230657d000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f2306375000)
libdc1394.so.22 => /usr/lib/x86_64-linux-gnu/libdc1394.so.22 (0x00007f23060ff000)
libavcodec.so.57 => /usr/lib/x86_64-linux-gnu/libavcodec.so.57 (0x00007f23049de000)
libavformat.so.57 => /usr/lib/x86_64-linux-gnu/libavformat.so.57 (0x00007f2304586000)
libavutil.so.55 => /usr/lib/x86_64-linux-gnu/libavutil.so.55 (0x00007f23042fa000)
libswscale.so.4 =>