rainysky陪你一起在zedboard上移植qt+opencv(四):在zedboard运行QT

其实在zedboard上运行qt在懒兔子和超群晴天的博客的里面都有写过,还算比较详细,不过也算是为了完整性,rainysky还是要把整个的流程写一遍。在wiki里面也有完整的教材,大家可以参考下
?link=http%3a%2f%2fwiki.xilinx.com%2fzy...
首先是下载qt的源码,最好是与你的qt的板卡一样,如果是按照三安装的qt可以用qmake –v命令查看版本,(如果你要是认真的看qt的安装过程,你会发现,里面也有显示qt的版本号)
可以看到rainysky用的是4.8.1的版本,不同的安装时间可能版本号不一样。qt源码的下载地址是
?link=http%3a%2f%2freleases.qt-p... 根据你自己版本号,将4.8.1改成你自己的,就可以下载源码包啦。rainysky将下载的源码包放在了共享目录下,并且建立/opt/zedboard/qt 文件夹,命令如下:为了能保存好安装好的文件,在新建两个文件夹 /opt/zedboard/qt/build /opt/zedboard/qt/install ,效果如下
之前我们已经配置好了交叉编译环境使用的环境变量path和 cross_compile,为了方便操作,还可以在设置如下几个环境变量。
export zynq_qt_build=/opt/zedboard/qt/build
export zynq_qt_install=/opt/zedboard/qt/install
export path=$zynq_qt_install/bin:$path
效果如下
记得一点,当你把这个终端关闭的话,环境变量就会失效,需要重新在设置下环境变量,如果想方便一点的话,可以安装(二)里面设置交叉编译环境一样,设置新的环境变量。
将源码包复制到build文件夹下面,并且解压。
为了能够安装配置qt,还需要下载一个软件包,qt/qwt sources archive(qt_build_src.tar 见附件),和qt的源码包一样。复制解压。
解压出来是四个文件:
qt-everywhere-opensource-src-4.7.3.tar.gz – qt source archive
qmake.conf – qt qmake configuration file
qwt-6.0.1.tar.bz2 – qwt source archive
qwtconfig.pri – qwt qmake project include file
其实我们需要的只是qmake.conf 这一个文件,其他都不需要,(以后你会发现这个文件的更强大的功能,现在先不对这个文件进行修改),qt_build_src.tar里的qmake.conf配置文件复制到qt-everywhere-opensource-src-4.8.1/mkspecs/qws/linux-arm-gnueabi-g++目录下,这个文件用来告知qmake应该用哪个编译器来编译qt工程
然后对qt进行配置,配置文件如下:
./configure \
-embedded arm \
-xplatform qws/linux-arm-gnueabi-g++ \
-little-endian \
-opensource \
-host-little-endian \
-confirm-license \
-nomake demos \
-nomake examples \
-prefix $zynq_qt_install
整个为:
其中-prefix $zynq_qt_install是告诉系统,安装的路径在哪的
配置完成后进行编译:
make
编译好了就可以进行安装(安装需要在root权限下进行,rainysky进入系统的时候就是root权限,这样很方便):
make install
焦急的等了快半个小时,终于编译完成了。在install文件夹下面,就是安装的文件:
在wiki百科里面,还讲了编译qwt,但我们用不到,也就没有进行编译,感兴趣的可以安装上面的来。
由于rainysky用的系统是sd自带的那个精简版的系统,容量比较小,没法直接将编译的文件复制到里面,只能做一个镜像啦。
做镜像的方法如下:
cd $zynq_qt_build
dd if=/dev/zero of=qt_lib.img bs=1m count=80
mkfs.ext2 -f qt_lib.img
chmod go+w qt_lib.img
mount qt_lib.img -o loop /mnt
cp -rf $zynq_qt_install/* /mnt
chmod go-w qt_lib.img
umount /mnt
解释一个,bs=1m count=80这句话代表的意思是建的镜像的大小是80m,所以复制的时候要注意一点啦,不要比这个大。
此时在/opt/zedboard/qt/build 下面的文件qt_lib.img就是qt的库文件啦。
至此qt移植成功了。要把qt的程序在板卡上运行,必须需要一个可执行文件,已我们上一节的helloworld为例
在上图中的路径下以此输入
qmake –project
qmake
make
即可生成可以在zedboard上运行的helloworld程序
可以看到在输入qmake的时候生成了makefile文件。
在zedboard板卡上运行的时候的命令为 ./helloworld -qws

高频逆变器是什么,它都有哪些特性
2022年全球芯片紧缺的原因是什么
逻辑分析仪内存不足?“拼”出解决之道
中国平板电脑市场将面临重新洗牌
德豪上半年收入8.74亿元 LED下滑下滑77.64%
rainysky陪你一起在zedboard上移植qt+opencv(四):在zedboard运行QT
功放参数指标(上)
关于无线网络拓扑结构的简单分析
物联网的蓬勃发展究竟是转机还是危机?
手机市场竞争进入白热化 小米手机的市场占有率却节节败退
默克和通用显示宣布在OLED领域开展研发合作
南存辉:B20峰会将成中国制造业走向国家化重要契机
IPO上市关注丨OBC市场份额进一步向弗迪动力、威迈斯等企业集中
MIT芯片将语音识别功耗降低99% 荣耀V9将于5天后发布
果蔬机哪些牌子好,众多家庭用户都选用了它
为医疗保健开发NLP应用程序
高通、NVIDIA投入无人机芯片平台
低功耗引领电子设计与电源技术新潮流
文思海辉以“以智赋能”为主题,带来AI+多行业的解决方案展示
面对5G通信的两大挑战有什么解决方案吗