opencv安装错误ubuntu

时间:2015-03-10 10:12:14

标签: c++ opencv ubuntu

我尝试使用

中提供的文档将opencv安装到我的Ubuntu 14.04计算机上
  

http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation

但是,在编译过程中我收到以下错误。

Linking CXX shared library ../../lib/libopencv_videoio.so
/usr/bin/ld: /usr/local/lib/libavcodec.a(avpacket.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libavcodec.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [lib/libopencv_videoio.so.3.0.0] Error 1
make[1]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/all] Error 2
make: *** [all] Error 2

我注意到有一些帖子提到了类似的错误,有些解决方案建议从libavcodec.a删除/usr/local/lib/。我不想这样做,因为我在机器中也需要ffmpeg库。

有人可以帮我解决这个问题吗?。

由于

2 个答案:

答案 0 :(得分:0)

我从一开始就简单地重新安装了整个内容,将$ ./configure的所有实例都替换为$ ./configure --enable-shared(首先确保删除所有文件夹和文件,包括上一次尝试的.so文件)。

显然这可行,因为https://stackoverflow.com/a/13812368/10593190

这与@camino对https://stackoverflow.com/a/19365454/10593190XavierStuvw's answer的评论相符。

答案 1 :(得分:0)

只需在您的终端/环境中运行这两行:

pip install opencv-python==3.4.5.20
pip install opencv-contrib-python==3.4.5.20