2013-05-01 69 views
2

我试图在Ubuntu 12.04 安装OpenCV 2.4.5我尝试下面就http://opencv.willowgarage.com/wiki/InstallGuide_Linuxopencv的2.4.5做出错误

步骤但是当我到达化妆步骤。我收到一个错误。我是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 

请帮助!

+0

我很确定这个链接已经过时 – 2013-05-01 16:16:23

+2

@peterretief对,好的是[here](http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html) – StreakyCobra 2013-05-01 18:03:31

回答

5

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

编辑:
我也跟着上http://www.ozbotz.org/opencv-installation/ OpenCV的2.4.5说明现在安装正确。我在64位Ubuntu 12.04由于--enable-shared --enable-pic参数在lib264和ffmpeg编译命令中丢失,所以在问题中提到了错误。

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

1

GCC:

$ 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 
+0

thnx! :)我遵循这些步骤,但最初无法安装它。卸载ffmpeg,它工作。 – 2013-05-01 21:25:39