移植opencv到龙芯1c上
2016-02-01 10:59
399 查看
参考了:/article/4731713.html
开发环境:RHEL5
运行环境:开源龙芯1c开发板(智龙首发版)
交叉编译器:gcc-4.3
opencv:2.4.9
cmake:2.8.10.2
移植好的opencv库
http://git.oschina.net/caogos/OpenLoongsonPickUpTennisRobot/tree/master/opencv%E5%BA%93%EF%BC%88%E4%BD%BF%E7%94%A8%E4%BA%A4%E5%8F%89%E7%BC%96%E8%AF%91%E5%99%A8gcc4.3%E7%BC%96%E8%AF%91%E7%9A%84%EF%BC%89
详细移植步骤
按照cmake:可以用命令“apt-get install cmake”或者到cmake官方下载编好的cmake,解压后直接运行
下载opencv源码,并解压
在命令行执行"cmake-gui",打开cmake的界面,选择源码所在目录,build目录需要新建一个,另外还有一个install目录,如下
把文档也编译出来
生成动态库
选上需要的opencv模块
需要qt的可以把qt也勾上,我这里没选
点击”Configure“按钮,选择交叉编译,然后点finish,如果有错,根据提示修改。再点击”Generate“
完成后,进入build目录(前面设置的),执行”make“编译。
如果提示错误,按照以下修改
修改文件CMakeCache.txt
CMAKE_C_FLAGS:STRING=-fPIC
CMAKE_EXE_LINKER_FLAGS=-lpthread -lrt -ldl
再make,make install,编好的库就在(前面设置的)install目录下
应用opencv库
编译测试程序
mipsel-linux-g++ main.cpp -o opencv_test -I/home/develop/opencv/opencv-2.4.9-ls1x-lib/include -L/home/develop/opencv/opencv-2.4.9-ls1x-lib/lib -lopencv_core -lopencv_imgproc -lopencv_highgui -lpthread -lrt
拷贝库文件
使用命令“mipsel-linux-readelf -d opencv_test”查看使用了那些库文件,然后将其拷贝到开发板上
[root@localhost opencv]# mipsel-linux-readelf -d opencv_test
Dynamic section at offset 0x19c contains 33 entries:
Tag Type Name/Value
0x00000001 (NEEDED) Shared library: [libopencv_core.so]
0x00000001 (NEEDED) Shared library: [libopencv_imgproc.so]
0x00000001 (NEEDED) Shared library: [libopencv_highgui.so]
0x00000001 (NEEDED) Shared library: [libpthread.so.0]
0x00000001 (NEEDED) Shared library: [librt.so.1]
0x00000001 (NEEDED) Shared library: [libstdc++.so.6]
0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x00000001 (NEEDED) Shared library: [libc.so.6]
运行程序
[LOONSON@Loongson-gz:/test/opencv]#./opencv_test
开发环境:RHEL5
运行环境:开源龙芯1c开发板(智龙首发版)
交叉编译器:gcc-4.3
opencv:2.4.9
cmake:2.8.10.2
移植好的opencv库
http://git.oschina.net/caogos/OpenLoongsonPickUpTennisRobot/tree/master/opencv%E5%BA%93%EF%BC%88%E4%BD%BF%E7%94%A8%E4%BA%A4%E5%8F%89%E7%BC%96%E8%AF%91%E5%99%A8gcc4.3%E7%BC%96%E8%AF%91%E7%9A%84%EF%BC%89详细移植步骤
按照cmake:可以用命令“apt-get install cmake”或者到cmake官方下载编好的cmake,解压后直接运行下载opencv源码,并解压
在命令行执行"cmake-gui",打开cmake的界面,选择源码所在目录,build目录需要新建一个,另外还有一个install目录,如下
把文档也编译出来
生成动态库
选上需要的opencv模块
需要qt的可以把qt也勾上,我这里没选
点击”Configure“按钮,选择交叉编译,然后点finish,如果有错,根据提示修改。再点击”Generate“
完成后,进入build目录(前面设置的),执行”make“编译。
如果提示错误,按照以下修改
修改文件CMakeCache.txt
CMAKE_C_FLAGS:STRING=-fPIC
CMAKE_EXE_LINKER_FLAGS=-lpthread -lrt -ldl
再make,make install,编好的库就在(前面设置的)install目录下
应用opencv库
编译测试程序mipsel-linux-g++ main.cpp -o opencv_test -I/home/develop/opencv/opencv-2.4.9-ls1x-lib/include -L/home/develop/opencv/opencv-2.4.9-ls1x-lib/lib -lopencv_core -lopencv_imgproc -lopencv_highgui -lpthread -lrt
拷贝库文件
使用命令“mipsel-linux-readelf -d opencv_test”查看使用了那些库文件,然后将其拷贝到开发板上
[root@localhost opencv]# mipsel-linux-readelf -d opencv_test
Dynamic section at offset 0x19c contains 33 entries:
Tag Type Name/Value
0x00000001 (NEEDED) Shared library: [libopencv_core.so]
0x00000001 (NEEDED) Shared library: [libopencv_imgproc.so]
0x00000001 (NEEDED) Shared library: [libopencv_highgui.so]
0x00000001 (NEEDED) Shared library: [libpthread.so.0]
0x00000001 (NEEDED) Shared library: [librt.so.1]
0x00000001 (NEEDED) Shared library: [libstdc++.so.6]
0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x00000001 (NEEDED) Shared library: [libc.so.6]
运行程序
[LOONSON@Loongson-gz:/test/opencv]#./opencv_test
相关文章推荐
- 【Linux学习009】脚本编程之变量、条件测试和条件判断
- Nginx笔记
- people cmm 成熟度演变
- Hadoop no.1
- inotify使用范例
- liunx之type命令 测试环境(cetos7)
- Codeforces Round #341 (Div. 2)-B. Wet Shark and Bishops(暴搜+组合)
- linux+tomcat无法显示图片验证码(windows下可以正常显示)的解决方案
- 怎么样给CentOS6.5增加swap分区
- tomcat自定义的Web部署文件中docBase和workDir区别
- Linux共享内存使用常见陷阱与分析
- linux机制与策略
- nginx-rtmp-module
- Linux 挂载光盘:mount: you must specify the filesystem
- tomcat 大并发报错 Maximum number of threads (200) created for connector with address null and port 8080
- linux查看文件系统块大小与内存页大小
- tar详解
- centos7下使用yum安装mysql
- Hadoop—FS Shell
- Linux命令行测试网速