zedboard上移植OPENCV库

系统 1263 0

zedboard上移植OPENCV库


之前做了很多移植OPENCV库的工作,但是需要包含的各种库,需要交叉编译,X264 ,JPGE ,FFMPGE等等

注意:在《嵌入式系统软硬件协同设计实战指南》中13章中,说了需要关闭各种设置开关,根本原因是我们没有相应的库支持,所以我们如果需要在opencv中使用相应的库,那么就必须提前将各种库交叉编译好,放入交叉编译器的目录,我的交叉编译器安装目录/root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/arm-xilinx-linux-gnueabi/ 

那么我们就开始交叉编译以下库。

1 交叉编译器的搭建

                  交叉编译器的搭建参见: http://blog.csdn.net/xiabodan/article/details/22717175

2 交叉编译JPEG

                 

1.安装libtool工具

1.1 下载libtool工具 libtool-2.2.10.tar.gz http://mirrors.ustc.edu.cn/gnu/libtool/

1.2  tar -xvzf  libtool-2.2.10.tar.gz -C /home/xzy/sdb1/JPEG/

1.3  进入解压后的目录,执行./configure

1.4  make

1.5  make install


2.JPEG编码库移植

2.1 下载JPEG源码包,选择jpegsrc.v6b.tar.gz     http://www.ijg.org/files/

2.2  解压  tar jpegsrc.v6b.tar.gz   -C /home/xzy/sdb1/JPEG/

2.3  进入解压后的目录,将刚刚libtool-2.2.10目录下的libltdl/config/config.sub和config.guess拷贝至此目录中。

2.4  配置./configure CC=arm-xilinx-linux-gnueabi-gcc  --host=arm-unknown-linux 

  –prefix= /home/xzy/sdb1/JPEG/jpeg-6b   --enable-shared   --enable-static

2.5  make

2.6   进入安装路径,创建如下目录    mkdir bin lib include man man/man1,我的安装目录就在这个目录,注意必须要创建这些 目录,不然是不然make install的(试过了。)

2.7  make install,然后就ok了。


3 交叉编译x264

                1  下载 yasm

                  yasm: http://yasm.tortall.net/Download.html      
                 解压  进入目录 进行以下配置:
               
                ./configure --enable-shared --prefix=/root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/arm-xilinx-linux-gnueabi/ --host=arm-unknown-linux
      
                 make 
      
                 make install
      
               

2 交叉编译x264

解压 之后进行配置
                ./configure --prefix=/root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/arm-xilinx-linux-gnueabi/ --enable-shared
      
                修改config.mak文件
        	# 这里改为ARM
	ARCH=ARM
	SYS=LINUX
	# 这里改为arm-xilinx-linux-gnueabi-gcc
	CC=arm-xilinx-linux-gnueabi-gcc
	# 这里去掉-DHAVE_MMXEXT -DHAVE_SSE2 -DARCH_X86
	CFLAGS=-Wall -I. -O4 -ffast-math -D__X264__ -DHAVE_MALLOC_H -DSYS_LINUX -DHAVE_PTHREAD -s -fomit-frame-pointer LDFLAGS= -lm -lpthread -sAS=nasm
      



 修改 Makefile 文件
        libx264.a: .depend $(OBJS) $(OBJASM)
rm-linux-ar rc libx264.a $(OBJS) $(OBJASM)
arm-linux-ranlib libx264.a
      
        make
make install
      



  然后在/root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/arm-xilinx-linux-gnueabi/lib下就可以有相应的库生成

4 交叉编译xvid

            
                cd xvidcore-1.1.3/build/generic/	
      
                ./configure --prefix=/root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/arm-xilinx-linux-gnueabi/ --disable-assembly
      
            	gedit platform.inc  修改 CC=arm-xilinx-linux-gnueabi-gcc
      

5 交叉编译ffmpeg

         tar xvjf ffmpeg-0.4.9-p20051120.tar.bz2 
         cd ffmpeg-0.4.9-p20051120/

6 交叉编译OpenCV


参考:

    

arm mini2440 基于v4l2 ffmpeg x264的视频远程监控 http://blog.csdn.net/ghostyu/article/details/7371310

 

基于v4l2的webcam应用, 本地预监 http://blog.csdn.net/sunkwei/article/details/6530343

zedboard上移植OPENCV库


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论