感谢这个资源共享的世界!美好的世界!
一:环境
ubuntu 14.0.4
交叉编译器:4.5.1
二:交叉编译器的安装(后面有所有的文件下载地址)
三:依赖库的安装:(没写解压的命令)
1):
zlib-1.2.7.tar.gz
CC=arm-linux-gcc ./configure --prefix =/home/opencvAll –shared
make
make install
可能出现的状况:好像这儿 我美出现什么状况,只要把编译器的路径搞好了。
2):jpegsrc.v8c.tar.gz
./configure --prefix=/home/allLib --host=arm-none-linux-gnueabi--enable-shared
make
make install
可能出现的状况:没遇见
3):libpng-1.5.14.tar.bz2(依赖zlibz)
CC=arm-linux-gcc./configure --prefix=/home/allLib --host=arm-linux LDFLAGS=-L/home/allLib/lib CFLAGS=-I/home/allLib/include
make
make install
可能遇见的问题:找不到zlib相关的依赖库 LDFLAGS=-L/home/allLib/lib CFLAGS=-I/home/allLib/include
4):x264-snapshot-20120528-2245-stable.tar.bz2
CC=arm-linux-gcc ./configure --host=arm-linux --cross-prefix=arm-none-linux-gnueabi --enable-shared --prefix=/home/allLib
make
make install
可能遇见的问题:没遇见。
5):xvidcore-1.3.2.tar.gz
cd xvidcore/build/generic(要注意哦)
CC=arm-linux-gcc./configure --prefix=/home/allLib --host=arm-none-linux-gnueabi --disable-assembly
make
make install
可能遇见的问题:没遇见。
6): ffmpeg-0.10.3.tar.bz2(这个介绍一下:视音频编解码库它的依赖库x264和xvidcore)
./configure --prefix=/home/allLib --enable-shared --disable-static --enable-gpl --enable-cross-complie --arch=arm --disable-stripping --target-os=linux --enable-libx264 --enable-libxvid --cc=arm-none-linux-gnueabi-gcc --enable-swscale --extra-cflags=-I/home/allLib/include --extra-ldflags=-L/home/allLib/lib--disable-asm
make
make install
可能遇见的问题:./configure时候出现了 --arch-arm 写错 和依赖库找不到 加 --extra-cflags=-I/home/allLib/include --extra-ldflags=-L/home/allLib/lib--disable-asm
./configure --help 查看configure的详细用法。
7):tiff-4.0.3.tar.gz
CC=arm-linux-gcc ./configure --prefix=/home/allLib --host=arm-linux
make
make install
四:opencv2.4.9的安装
apt-get install cmake-gui cmake (你不能上网的那 你就尴尬了)
cd opencv 2.4.9
mkdir arm_build
cd arm_build
gedit toolchain.cmake
set( CMAKE_SYSTEM_NAME Linux )
set(CMAKE_SYSTEM_PROCESSOR arm )
set(CMAKE_C_COMPILER arm-none-linux-gnueabi-gcc )
set(CMAKE_CXX_COMPILER arm-none-linux-gnueabi-g++ )
set(CMAKE_FIND_ROOT_PATH "/home/allLib/lib ") ##这个是就是依赖库的路径
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER )
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY )
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY )
cmake-DCMAKE_TOOLCHAIN_FILE=toolchain.cmake ../
进行一系列的配置:
CMAKE_INSTALL_PREFIX /usr/local/arm/opencv-install
去掉 WITH_CUDA
去掉 WITH_GTK
去掉 WITH_1394
去掉 WITH_GSTREAMER
去掉 WITH_LIBV4L (因为后面有另外一个WITH_V4L)
去掉 WITH_TIFF
去掉 BUILD_OPENEXR
去掉 WITH_OPENEXR
去掉 BUILD_opencv_ocl
去掉 WITH_OPENCL
根据自己的需要选择编译的选项,有的选项需要安装相应的依赖的库,否则编译会出错
完成后 Generate
修改 CMakeCache.txt, CMAKE_EXE_LINKER_FLAGS原来为空,加上 -lpthread -lrt
我配置出现的时候主要出现了什么start的错误就是没有把GIGEPA那个选项没有去掉。
make
可能出现的错误:
找不到前面的依赖库的某个库:
我的解决方法就是:把它所需要的库cp 到 opencv2.4.9/arm_build/lib自我感觉这个方法很好当然也可以修改/etc/profile加LIB_LIBRARY_PATH=$LIB_LIBRARY_PATH:" /home/allLib/lib "
make install
资源:
依赖包:
http://download.csdn.net/detail/xzy_ok/9874347
opencv2.4.9包:
http://pan.baidu.com/s/1jIxFqqM
我移植好了的opencv库:
http://download.csdn.net/detail/xzy_ok/9874361
GOOD LUCK!!!!