Ubuntu12.04 交叉编译 opencv-2.4.11过程

1.Ubuntu换源
可换源有很多,不过要下载12.04版的,好像不多。
1.1先备份源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup

1.2由于12.04不受支持了,12.04相关的这些包的资源被移到了old-releases.ubuntu.com域名下:

sudo gedit /etc/apt/sources.list

将下面内容插入进去,并保存

deb http://old-releases.ubuntu.com/ubuntu precise main universe restricted multiverse
 
deb http://old-releases.ubuntu.com/ubuntu precise-security universe main multiverse restricted
 
deb http://old-releases.ubuntu.com/ubuntu precise-updates universe main multiverse restricted
 
deb http://old-releases.ubuntu.com/ubuntu precise-proposed universe main multiverse restricted

1.3更新一下

sudo apt-get update

2.安装cmake-qt-gui
2.1 命令行安装

sudo apt-get install cmake-qt-gui

2.2运行 cmake-gui(任意界面输入即可)

3.下载opencv-2.4.11
opencv-2.4.11

拷贝到目标文件夹下,然后命令行进入该目录
3.1解压

tar -zxvf opencv-2.4.11.tar.gz

4 cmake-gui 配置
4.1 在opencv-2.4.11中创建build install

mkdir arm_build 
mkdir arm_install
cd arm_build

4.2在cmake-gui中配置
配置代码源和build目录

点击configure

任意命名opearting system 配置g++和gcc

点击finishi后软件会配置一段时间,右下角会有进度条

配置完成后在search栏中输入flags,并在勾选advanced,然后按下图进行配置。即将CMAKE_CXX_FLAGS和CMAKE_C_FLAGS的值设为-O3 -fPIC -W -Wall,将CAMKE_EXE_LINKER_FLAGS的值设为-lpthread -lrt -ldl。其实就是配置了编译、链接选项,需要进一步了解其含义可以百度gcc g++ 后的-参数的含义

然后在search框搜索zlib,在BUILD_ZLIB后打勾

修改CMAKE_INSTALL_PREFIX,默认usr/local,修改成opencv-2.4.11/arm_install目录

勾选BUILD_opencv_world库

在CMAKE_BUILD_TYPE后填上:RELEASE

再次点击configure,等提示done后,点击Generate

5.命令行cmake
5.1在opencv-2.4.11/arm_build目录下执行

sudo make -j4

5.2 安装opencv
继续在opencv-2.4.11/arm_build目录下输入

sudo make install

这样就能在open-2.4.11/arm_install中看到lib\include等目录了,直接拷贝到项目,引用即可。

避坑1:
在sudo make -j4的过程中,opencv_world总是报错项目未找到.o。我找到目录,明明是.obj啊,
原来在opencv_world的cmakelists.txt文件中,有一段set(objpath0 "CMakeFiles/<MODULE_NAME>.dir/<RELATIVE_SRC_NAME>.o"),既然我这生成的是.obj,就改成.obj吧
避坑2:
在sudo make -j4过程中,oencv_world项目,总是报 ////opencl-kernel.cpp.obj未找到,于是在arm_build/modules/world中修改文件world_objects.list和world_objects.rsp,把里面/__/路径的,全部改成正确的路径。

可能上面的坑,可以通过配置文件CMakeLists来解决,一想到又要学习语法,先这么硬干吧。
大功告成!!!

引用:
https://blog.csdn.net/qq_50839755/article/details/123998946
https://blog.csdn.net/Flag_ing/article/details/109508374
https://blog.csdn.net/spiremoon/article/details/105923235

posted @ 2023-07-10 21:00  咖啡不会醉  阅读(30)  评论(0编辑  收藏  举报