交叉编译环境(arm-linux-gcc)中opencv的安装

2019-07-13 03:45发布

    在Ubuntu系统下开发嵌入式linux所需要的图像处理动态库,不仅需要配置交叉编译环境,有时候也需要安装opencv;本人前面的一篇博文已经详细介绍了Ubuntu系统下检查编译环境(arm-linux-gcc)的配置,这里不再赘述,本文主要讲解一下Unbuntu系统下为交叉编译环境安装opencv,下面是安装过程: 第一步:配置arm-linux-gcc环境     本人有一篇博文已介绍,读者可自行翻阅。 第二步:安装cmake-gui 1、打开ubuntu的命令终端,输入:su      进入root用户模式 2、在终端输入:cmake-gui    如果提示如下:    
   需要安装cmake,在终端输入:sudo apt-get install cmake-gui    安装好cmake。 第三步:安装opencv  forarm-linux-gcc    1、下载opencv2.3.1(或则其他你正在使用的opencv版本) 2、从终端进入下载目录,在终端输入:sudo tar xvf OpenCV-2.3.1.tar.bz2 3、终端输入:su    进入root用户模式 4、终端输入:cmake-gui   出现如下界面:
 
   点击Browse Source在红 {MOD}框内选择OpenCV-2.3.1的解压目录,    点击Browse Source在蓝 {MOD}框内选择输入/usr/local/opencv-arm(opencv-arm文件夹事先在/usr/local中建立) 5、点击”Configure”按钮,然后弹出下面的对话框。如下面那样选择。然后点击”Next”
       
6、弹出新的对话框,需要填充的信息如下:
      
     红 {MOD}框内选择:/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-linux-gcc      蓝 {MOD}框内选择:/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-linux-g++      “Target Root”中填入/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0      点击Finish,cmake就会自动工作; 7、等其停止工作后,会出现下图那样,红了一片。
                     tiff取消,下面的打勾。             找到把后面的值改成 /usr/local/opencv-arm; 8、配置完成。再次点击Configure。如下图所示,可以看到没有了红 {MOD}。(如果还有,继续按Configure)
         
9、现在点击“Generate”按钮,产生Makefile文件。 10、关闭cmake-gui窗体,在终端输入:cd /usr/local/opencv,进入opencv安装目录,终端输入:sudo gedit CMakeCache.txt        在                         加上-lpthread -lrt变成           保存退出。 11、在终端输入:make,编译,整个过程很耗时间,             12、在终端输入:make install,开始安装,安装完毕 13、配置opencv,从终端进入opencv-arm目录,在终端输入:sudo mkdir pkgconfig,新建目录完成后进入pkgconfig目录,在终端输入:sudo gedit opencv-arm.pc,在文       档内输入:                  保存并退出。 14、配置shell,在终端输入:sudo gedit /etc/bash.bashrc         在文档最后一行输入:                      终端输入:source  /etc/bash.bashrc,整个安装完成 15、创建一个test.cpp文档,输入:
              保存退出,终端输入以下命令:          arm-linux-g++ `pkg-config --cflags opencv-arm` `pkg-config –libs opencv-arm` test.cpp -lpthread –lrt –o test               16.移植到arm上说明:      以后编译arm板的OpenCV代码时,要使用上面的编译指令。其中` 符号不是逗号,而是1 左边的那个符号。而把编译好的程序放到arm板时,在运行之,还要把/usr/local/arm-opencv/lib目录下的所有.so文件都拷贝到arm的/usr/lib或者/lib目录下。   到此,整个安装过程完成。
参考文献: http://blog.csdn.net/luotuo44/article/details/8958990 http://jingyan.baidu.com/article/afd8f4de4deea434e286e994.html