2

我正在尝试在 Ubuntu 12.04 上安装 opencv 2.4.5 我尝试按照http://opencv.willowgarage.com/wiki/InstallGuide_Linux上的步骤进行操作

但是,当我到达制作步骤时。我收到一个错误。我是 linux 新手。

错误是

Linking CXX shared library ../../lib/libopencv_highgui.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: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [lib/libopencv_highgui.so.2.4.5] Error 1
make[1]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/all] Error 2
make: *** [all] Error 2

请帮忙!!!

4

2 回答 2

5

看来ffmpeg是罪魁祸首。不知何故,它造成了一些问题。我按照上述说明卸载了 ffmpeg 并安装了 OpenCV。现在我安装了没有 FFMPEG 支持的 OpenCV 2.4.5。但至少它正在工作!

编辑:
我按照http://www.ozbotz.org/opencv-installation/上的说明操作 OpenCV 2.4.5 现在已正确安装。我在 64 位 Ubuntu 12.04 由于 lib264 和 ffmpeg 编译命令中缺少 --enable-shared --enable-pic 参数,因此引发了问题中提到的错误。

按照这些说明解决了问题。

于 2013-05-01T21:23:44.297 回答
1

海合会:

$ sudo apt-get update
$ sudo apt-get install build-essential

如果可用,请使用更高版本(但请确保为您的硬件和操作系统获得正确的版本

Cmake:
http ://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz

$ tar -xf cmake-2.8.10.2.tar.gz
$ cd cmake-2.8.10.2
$ ./configure
$ make -j4
$ sudo make install

Opencv:http: //sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.3/OpenCV-2.4.3.tar.bz2/download

$ tar -xf OpenCV-2.4.3.tar.bz2
$ cd OpenCV-2.4.3
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=Release ..
$ make -j4
$ sudo make install
于 2013-05-01T16:09:39.030 回答