ARM板ok6410移植qt4.84+opencv2.4.9初步成功

先上图,有图有真相,当课题重新回归到嵌入式搭载的老问题上时,我还一度各种担心,发现最新的A9板4412能用Android了,还想着偷懒买块现成的只做最顶层开发就好,结果找遍工业相机厂家没见到有提供Android驱动的,一了解才明白,Android驱动是基于linux驱动的貌似,于是乎,又尝试着回归到移植opencv到嵌入式linux的老路上来。

想当初,零linux基础的我对着借来的6410各种被蹂躏,历时1个月仅仅是搭建了能用板子自带的qt4.7.1库编写界面程序而已。那次各种编译错误,各种零基础被虐,各种兼容性出错,给我早期的嵌入式linux学习留下了极深的阴影,此处省略random(2^64,2^256)个字,此时,我又在被工业相机技术支持人员鄙视我linux底层开发近乎零基础后,终于又试图站起来,,来,来,,

opencv-2.4.9,qt-4.8.4,qtcreator-2.6.0,

板子ok6410,搭载自带3.0.1内核,Yaffs2系统(半),

编译器用的飞淩自带的4.3.2,看到说什么最新的opencv、qt会不支持还后怕来着,

一、QT移植:

此次成功要感谢几位博主,关于qt移植的两位:

http://www.cnblogs.com/emouse/archive/2013/01/29/2881311.html

http://blog.csdn.net/zjg555543/article/details/7755714

前者帮助较大,但细节有一点点笔误的地方,结合二者博文以及飞淩自带手册,完成了qt移植。

二、opencv移植:

这里要感谢这位博主的博文:

http://blog.csdn.net/jiebaoabcabc/article/details/22935185

这位博主写的详尽易懂,尽管我这个门外汉各种担惊受怕,可还是在这篇博文的指导下成功了,关键是最后要修改工程的lib应用路径,然后按博主的方法,执行文件跟着lib库就好。

ps1:关于nfs挂载昨晚忙了一晚上不成功,只能放弃,遗憾之;

ps2:关于自制Yaffs2系统镜像,尚无暇尝试;

ps3:关于编译器版本,没敢再尝试,老老实实用的自带的,

写在最后:

不管怎么说,opencv能移植确保了课题架构顶层的图像算法可以稳定实时,但实时性及工业相机兼容性还要之后一步步去尝试,在成功当日得知vs2015可以用C#编写Android和IOS的app,有种想再去补下上层开发的知识了,C#应该比学JAVA容易。此外,在读研忙到现在看来,早先的观点“软>硬>机”真的是太片面了,如果单纯只会上层开发,还是太浅了,底层开发是保证,环境打不起来,美好的顶层设想也只能是浮云,可,那些博士大都也是至关顶层,甚至算法层面吧,,搞不灵清了,起码,懂底层开发的上层开发人员,一定比单纯的上层开发人员牛逼就对了,,

2014/11/15

不是教程,仅仅小结

时间: 2024-10-06 10:25:08

ARM板ok6410移植qt4.84+opencv2.4.9初步成功的相关文章

海思开发板3520D移植Qt4.8.6环境变量配置

# /etc/profile: system-wide .profile file for the Bourne shells # # set_path_before() { [ -d $1 ] && PATH="$1:$PATH" } PATH="/usr/bin:/usr/sbin:/bin:/sbin" set_path_before /usr/local/sbin set_path_before /usr/local/bin LD_LIBRA

海思 3520D 移植Qt4.5.3 一

一.移植Qt4.5.3 1.获得 Qt4.5.3 的源代码Qt4.5.3源代码的原始包 qt-embedded-opensource-src-4.5.3.tar.gz 将其拷贝到 /opt 下, 然后在linux终端上输入如下命令(不用键入#),在/opt/下解压Qt4.5.3的源码包 # cd /opt/ # tar xvzf /opt/qt-embedded-opensource-src-4.5.3.tar.gz 2.交叉编译Qt4.5.3 2.1.#vim mkspecs/qws/linu

omap 移植qt4.7.0

准备: 1.Qt源码包 qt-everywhere-opensource-src-4.7.0.tar.gz 2.交叉编译器 arm-eabi-4.4.0.tar.bz2 3.触摸屏校验工具:tslib-1.4.tar.gz 4.开发板omap 编译安装: 1.首先安装交叉编译器arm-eabi-4.4.0.tar.bz2(这个很容易,不多说了) 安装tslib: 执行命令cd tslib,进入tslib当前目录,接着执行命令如下 [email protected]:/arm/qt# cd tsl

移植Qt4.8.4项目到QT5.2上时遇到的一些问题

问题1:Qt 5.2 使用原来的QT4.8.4项目时QWebView .QWebFrame等类无法编译通过. 出现原因:QWebView .QWebFrame.QWebPage.QWebInspector等这些类被单独移到了QtWebKitWidgets模块,不再在QtWebKit模块当中:而QWebHistory等类仍然保留在QtWebkit模块中. 解决方法:使用到QWebPage等webkit相关可视部件的,Qt5.2单独放到了QtWebKitWidgets模块中,所以在使用了QWebPa

“hello world”驱动实现过程(ARM板上)

1.  在/home/sxy/目录下新建hello_1文件夹,在此文件夹下编写hello.c和Makefile文件(假设已经编写好了),make生成模块文件: PS:hello.ko就是用于需要使用的驱动模块. hello.c代码: Makefile代码: 注意Makefile文件中的黑色填充部分: ①选择交叉编译器: ②正确选择内核树所在目录(此内核即为开发板使用的内核). 2.  打开串口终端,启动开发板,将/home/目录挂载到开发板/tmp/hello/目录下: PS:insmod实现模

编译在arm板上使用的sqlite3的静动态库

采用的是sqlite-autoconf-3080002.tar.gz 解压 tar xvf sqlite-autoconf-3080002.tar.gz 进入 cd sqlite-autoconf-3080002/ 采用的是 arm-none-linux-gnueabi-gcc(g++)编译. ./configure --host=arm-none-linux-gnueabi --prefix=/home/liukang/sqlite-arm-linux LD=arm-none-linux-gn

arm板 通过超级终端与pc互传文件

在嵌入式的开发过程中,我们经常要在pc端和arm板之间互相传文件: arm-->pc:打开超级终端,选择菜单栏上的传送-->发送文件, 之后就会弹出一个框来,选择你要发送的文件 然后选择发送协议:Zmodem与崩溃恢复,点击发送按钮即可. pc-->arm:在超级终端中,点击鼠标右键,在弹出的菜单中选择"接收文件",开始设置接收文件的目录和协议,然后在终端中输入命令:sz   XXXXXX(文件名,文件名应该带上相应的目录,如果是在当前目录下,则直接写文件名即可)

.net core在Linux ARM板上运行

最近接了个临时任务,给别的项目组的机器人平台上开发个小程序,那机器人上跑的是ARM平台,ubuntu的系统. 本来打算用C++写的,由于最近用.net core较多,鉴于其在linux平台良好的兼容性,加上貌似.net core是能在arm平台上开发的.想到如果能在arm板上跑.net 程序,则无论是开发还是调试的效率都将大大提升. 抱着试一试的心情,打开了MS的.net core安装网站,发现其并没有提供arm平台的在线安装方式.本来以为凉了的,不过还是找到了其二进制的安装包?.NET Cor

MPlayer在ARM上的移植(S5PV210开发板)

MPlayer 1.0已经把大部分解码库都自带了,如ffmpeg,但是自带的音频库在S5PV210下效果非常不好.换成使用libmad效果不错.因此MPlayer 在ARM-Linux的最简单的移植只需要移植这两个即可.移植后即进行字符界面的播放.      移植之前先做好移植前准备,安装好arm-linux交叉编译器,并下载 MPlayer-1.0rc2.tar.bz2 和libmad包(libmad-0.15.1b.tar.gz) 1.安装libmad(1)解压libmad解压libmad包