您的位置:首页 > 运维架构

ubuntu14.04上交叉编译opencv-2.4.9

2017-10-24 17:55 381 查看
一、下载opencv源码以及相关依赖库源码(libz、libjpeg、libpng、yasm、libx264、libxvid、ffmpeg)

二、编译依赖库
       1、Libz的交叉编译
            第一步: export CC=<toolchain的gcc路径> 
            第二步 :  ./configure --prefix=<生成库的安装目录> --shared
            第三步: make
                          make install
     
       2、Libjpeg的交叉编译
            第一步: export CC=<toolchain的gcc路径> 
            第二步:./configure  --host=arm-linux --prefix=<生成库的安装目录>  --enable-shared --enable-static
            第三步: make
                          make install

       3、Libpng的交叉编译
            第一步: export CC=<toolchain的gcc路径> 
            第二步: ./configure  --host=arm-linux --prefix=<生成库的安装目录>  --enable-shared --enable-static
            第三步: make
                          make install

       4、yasm的交叉编译
            第一步: export CC=<toolchain的gcc路径> 
            第二步: ./configure --host=arm-linux --prefix=<生成库的安装目录>  --enable-shared --enable-static
            第三步: make
                          make install

       5、Libx264的交叉编译
            第一步: export CC=<toolchain的gcc路径> 
            第二步:./configure --enable-shared --host=arm-linux --disable-asm --prefix=<生成库的安装目录>
            第三步: make
                          make install

       6、Libxvid的交叉编译
            第一步: export CC=<toolchain的gcc路径> 
            第二步:cd build/generic  && ./configure --prefix=<生成库的安装目录>  --host=arm-linux  --disable-assembly
            第三步: make
                          make install

       7、ffmpeg的交叉编译
           第一步: export CC=<toolchain的gcc路径> 
           第二步:./configure --enable-cross-compile --target-os=linux --cc=arm-linux-gnueabihf-gcc --arch=arm --enable-shared --disable-static --enable-gpl --enable-nonfree --enable-ffmpeg --disable-ffplay --enable-ffserver --enable-swscale --enable-pthreads 
                        --disable-yasm --disable-stripping --enable-libx264 --enable-libxvid  --extra-cflags=-I/usr/arm-linux-gnueabihf/include  --extra-ldflags=-L/usr/arm-linux-gnueabihf/lib  --prefix=<生成库的安装目录>
           第三步: make
                         make install

三、配置toolchain

       上一步骤执行完毕,将会在--prefix指定的目录下生成如下的文件结构,

      


       1、将上述lib目录中的文件复制到toolchain的rootfs目录的usr/lib目录下
       
       2、将上述include目录复制到toolcahin的rootfs目录的usr目录下

       注:toolchain的rootfs目录,存放了交叉编译时需要用到的目标平台相关的库、头文件等,不同版本的toolchain该目录可能有所不同,
              以gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux这个toolchain为例,该目录为arm-linux-gnueabihf/libc

四、配置opencv
      1、在opencv源码根目录下创建编译目录build
      2、启动cmake-gui
      3、去掉with_cuda  with_gtk  with_1394 libv4l选项
      4、配置CMAKE_INSTALL_PREFIX, 为编译后的文件安装的路径
      5、点击config, 然后generate
      6、进入build, 执行make
      7、执行make install

至此,可以在CMAKE_INSTALL_PREFIX指定的目录下找到相关的库文件以及头文件。

       
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息