importerror: libavcodec.so.54: cannot open shared object file: No such file or directory

参考文献:

1,关于两个问题的分析:http://blog.chinaunix.net/uid-23069658-id-4028681.html 

2,    指令:https://blog.csdn.net/flydream0/article/details/8620396

3, 关于dev:https://blog.csdn.net/wangjianno2/article/details/52264814

4,关于:sudo apt-get autoremove libopencv-dev指令:https://blog.csdn.net/l18930738887/article/details/54696148


在尝试装了caffe之后(虽然没成功),在pycharm中写import CV2.就报错: importerror: libavcodec.so.54: cannot open shared object file: No such file or directory

    相关知识:

1,安装caffe的时候,有如下问题

提示:libopencv_imgproc.so.3.1, may conflict with liopencv_imgproc.so.2.4

所以我就输入了sudo apt-get autoremove libopencv-dev


考虑是因为这句话做的鬼。于是sudo install libopencv-dev.

   -dev这表示是软件包的意思

 相关指令学习,见参考文献2.据了解autoremove不要轻易使用

  但是问题还是没有解决

2,分析报错原因:

(1)  参见参考文献1(有点难懂)。就是说不要随意添加export之类的。

(2).so       是与动态链接库有关的东西。依赖的头文件信息,两个软件的纽带,差不多这个意思吧。


            网上大多数答案,都是在确保.so确实已经在应该在的位置了。然后改的环境变量,或者安装fmpeg

 (3)后来考虑是不是opencv本身出了问题,所以,使用验证

  下面就用opencv自带的摄像头程序测试一下吧。

    用cd 进入到opencv-3.3.1/samples/cpp/example_cmake目录下.(不要拼写错误)

          [此时我们可以使用如下命令查看该文件夹下面有什么。]

                             ls

(实际上里面是一个cmake的example)

按顺序执行

cmake .
make
./opencv_example

果然,仍然提示importerror: libavcodec.so.54: cannot open shared object file: No such file or directory

所以,我决定重新安装opencv。然后这个问题,就解决了。

3,今天读了Denny的学习笔记http://www.cnblogs.com/denny402/p/5088399.html。也提到了这个问题

也许你在编译runtest的时候,会报这样的错误:

.build_release/test/test_all.testbin: error while loading shared libraries: libhdf5.so.10: cannot open shared object file: No such file or directory

这是因为 libhdf5.so的版本问题,你可以进入/usr/lib/x86_64-linux-gnu看一下,你的libhdf5.so.x中的那个x是多少,比如我的是libhdf5.so.7

 因此可以执行下面几行代码解决:

# cd /usr/lib/x86_64-linux-gnu
# sudo ln -s libhdf5.so.7 libhdf5.so.10
# sudo ln -s libhdf5_hl.so.7 libhdf5_hl.so.10
# sudo ldconfig
可是,我并没有找到那个libhdf5.so.x



猜你喜欢

转载自blog.csdn.net/weixin_30226901/article/details/80373875
今日推荐