移植QT到ZedBoard(制作运行库镜像) 交叉编译 分类: ubuntu shell ZedBoard OpenCV 2014-11-08 18:49 219人阅读 评论(0) 收藏
制作运行库
由于ubuntu的Qt运行库在/usr/local/Trolltech/Qt-4.7.3/下,由makefile可以看到引用运行库是
INCPATH = -I/usr/local/Trolltech/Qt-4.7.3/mkspecs/default -I. -I/usr/local/Trolltech/Qt-4.7.3/include/QtCore -I/usr/local/Trolltech/Qt-4.7.3/include/QtNetwork -I/usr/local/Trolltech/Qt-4.7.3/include/QtGui -I/usr/local/Trolltech/Qt-4.7.3/include -I. -I. -I.
因此如果将编译后的可执行文件在ZedBoard上运行,也许早在相应的路径下找到运行库文件。Xilinx给出了Qt运行库镜像的制作方法:切换到qt-everywhere-opensource-src-4.7.3.tar.gz的解压路径,在控制台中输入

dd if=/dev/zero of=qt_lib_ext4.img bs=1M count=80
mkfs.ext4 -F qt_lib_ext4.img
chmod go+w qt_lib_ext4.img
mount qt_lib_ext4.img -o loop /mnt
cp -rf /usr/local/Trolltech/Qt-4.7.3/* /mnt
chmod go-w qt_lib_ext4.img
umount /mnt

即可。能找到生成的库文件镜像文件qt_lib_ext4.img,使用时将其挂载到
/usr/local/Trolltech/Qt-4.7.3/
即可。
此时在/opt/zedboard/qt/build 下面的文件qt_lib.img就是qt的库文件啦
至此qt移植成功了。要把qt的程序在板卡上运行,必须需要一个可执行文件,已我们上一节的helloworld为例
在工程路径下,使用命令
qmake -project
生成新的工程文件lab2_qt_camera.pro。再使用
qmake
生成makefile文件,打开makefile文件可以看到

1 #############################################################################
2 # Makefile for building: lab2_qt_camera
3 # Generated by qmake (2.01a) (Qt 4.7.3) on: Sun Dec 23 02:24:47 2012
4 # Project: lab2_qt_camera.pro
5 # Template: app
6 # Command: /usr/local/Trolltech/Qt-4.7.3/bin/qmake -o Makefile lab2_qt_camera.pro
7 #############################################################################
8
9 ####### Compiler, tools and options
10
11 CC = ${CROSS_COMPILE}gcc
12 CXX = ${CROSS_COMPILE}g++
13 DEFINES = -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED
14 CFLAGS = ${CROSS_COMPILE_CFLAGS} -I$(ZYNQ_QT_INSTALL)/include -DZYNQ -O2 -Wall -W -D_REENTRANT $(DEFINES)
15 CXXFLAGS = ${CROSS_COMPILE_CPPFLAGS} -I$(ZYNQ_QT_INSTALL)/include -DZYNQ -O2 -Wall -W -D_REENTRANT $(DEFINES)
16 INCPATH = -I/usr/local/Trolltech/Qt-4.7.3/mkspecs/default -I. -I/usr/local/Trolltech/Qt-4.7.3/include/QtCore -I/usr/local/Trolltech/Qt-4.7.3/include/QtNetwork -I/usr/local/Trolltech/Qt-4.7.3/include/QtGui -I/usr/local/Trolltech/Qt-4.7.3/include -I. -I. -I.
17 LINK = ${CROSS_COMPILE}g++
18 LFLAGS = -L$(ZYNQ_QT_INSTALL)/lib -Wl,-O1 -Wl,-rpath,/usr/local/Trolltech/Qt-4.7.3/lib
19 LIBS = $(SUBLIBS) -L/usr/local/Trolltech/Qt-4.7.3//lib -lQtGui -L/usr/local/Trolltech/Qt-4.7.3//lib -lQtNetwork -lQtCore -lpthread
20 AR = ${CROSS_COMPILE}ar cqs
21 RANLIB =
22 QMAKE = /usr/local/Trolltech/Qt-4.7.3/bin/qmake
23 TAR = tar -cf
24 COMPRESS = gzip -9f
25 COPY = cp -f
26 SED = sed
27 COPY_FILE = $(COPY)
28 COPY_DIR = $(COPY) -r
29 STRIP = ${CROSS_COMPILE}strip
30 INSTALL_FILE = install -m 644 -p
31 INSTALL_DIR = $(COPY_DIR)
32 INSTALL_PROGRAM = install -m 755 -p
33 DEL_FILE = rm -f
34 SYMLINK = ln -f -s
35 DEL_DIR = rmdir
36 MOVE = mv -f
37 CHK_DIR_EXISTS= test -d
38 MKDIR = mkdir -p
39
40 ####### Output directory
41
42 OBJECTS_DIR = ./
43
44 ####### Files
45
46 SOURCES = main.cpp \
47 mainwindow.cpp \
48 v4l2grab.c moc_mainwindow.cpp
49 OBJECTS = main.o \
50 mainwindow.o \
51 v4l2grab.o \
52 moc_mainwindow.o
#之后省略

使用的gcc是 ${CROSS_COMPILE}gcc,也就是arm-xilinx-linux-gnueabi-gcc,g++ 是${CROSS_COMPILE}g++,也就是arm-xilinx-linux-gnueabi-g++;因而编译后的可执行文件是可以再Zed上 运行的。再使用
make
生成可执行文件lab2_qt_camera。(可执行文件名默认和你的工程目录相同)
移植QT到ZedBoard(制作运行库镜像) 交叉编译 分类: ubuntu shell ZedBoard OpenCV 2014-11-08 18:49 219人阅读 评论(0) 收藏的更多相关文章
- ZEDBOARD启动自启配置(加载镜像) 分类: OpenCV ubuntu shell ZedBoard Eye_Detection 2014-11-08 18:53 167人阅读 评论(0) 收藏
参考:陆书14.2.8 1)备份ramdisk8M.image.gz 2)加载rootfs镜像文件: 3)在镜像目录下建立自己所需文件夹(挂载目录): 我需要的挂载目录有两个: root/qt/ins ...
- zedboard--交叉编译Opencv库的生成 分类: shell ubuntu fool_tree的笔记本 ZedBoard OpenCV 2014-11-08 18:57 171人阅读 评论(0) 收藏
Opencv的移植,xzyfeixiang和rainysky的博客. 第一步肯定是下载opencv的源码包 第二步已经做好的交叉编译环境. 第三步下载安装cmake apt-get install ...
- 移植opencv库到zedboard(制作运行库镜像) 分类: OpenCV ZedBoard ubuntu shell Eye_Detection 2014-11-08 18:48 172人阅读 评论(0) 收藏
主要参考rainysky的博客 http://ledage.eefocus.com/sj229335457/blog/13-06/295352_ad954.html opencv的话只需要将lib这个 ...
- PC机安装Qt以及QT交叉编译环境 分类: OpenCV ZedBoard shell ubuntu Eye_Detection 2014-11-08 18:57 246人阅读 评论(0) 收藏
PC: apt-get install qtcreator Qt Embedded for ZedBoard: 下载qt-everywhere-opensource-src-4.7.3.tar.gz, ...
- OpenCV与QT联合编译 分类: Eye_Detection ZedBoard OpenCV shell ubuntu 2014-11-08 18:54 143人阅读 评论(0) 收藏
问题1:首先参考rainysky的博客,发现qmake时发生找不到目录,文件的错误,又找不到 qmake.conf 文件的写法.所以开始按照网上的程序修改 XXX.pro 文件. 问题2:使用QT C ...
- 利用Python分析GP服务运行结果的输出路径 & 实现服务输出路径的本地化 分类: Python ArcGIS for desktop ArcGIS for server 2015-08-06 19:49 3人阅读 评论(0) 收藏
最近,一直纠结一个问题:做好的GP模型或者脚本在本地运行,一切正常:发布为GP服务以后时而可以运行成功,而更多的是运行失败,甚至不能知晓运行成功后的结果输出在哪里. 铺天盖地的文档告诉我,如下信息: ...
- 你所不知道的C和C++运行库 标签: vc 2017-05-26 10:33 41人阅读 评论(0) 收藏
在使用vs2013调用vc2005编译出的dll时出现错误,遂将源程序用vs2013编译出dll,再用vs2013调用错误消失,不解.寻找原因时有人说"VC库版本不一样",故查找C ...
- 总结分享十大iOS开发者最喜爱的库 分类: ios相关 app相关 2015-04-03 16:43 320人阅读 评论(0) 收藏
该10大iOS开发者最喜爱的库由"iOS辅导团队"成员Marcelo Fabri组织投票选举而得,参与者包括开发者团队,iOS辅导团队以及行业嘉宾.每个团队都要根据以下规则选出五个 ...
- Windows7下QT5开发环境搭建 分类: QT开发 2015-03-09 23:44 65人阅读 评论(0) 收藏
Windows7下QT开法环境常见搭配方法有两种. 第一种是:QT Creator+QT SDK: 第二种是:VS+qt-vs-addin+QT SDK: 以上两种均可,所需文件见QT社区,QT下载地 ...
随机推荐
- thinkphp路径引用问题
查看ThinkPHP\Library\Behavior\ContentReplaceBehavior.class文件,常量定义如下定义: '__ROOT__' => __ROOT__ ...
- python 连 mongodb
这几天在学习Python Web开发,于是做准备做一个博客来练练手,当然,只是练手的,博客界有WordPress这样的好玩意儿,何必还自己造车呢?决定使用Tornado这个框架,然后数据库方面决定顺便 ...
- 【转】Spring注解@Component、@Repository、@Service、@Controller区别
http://blog.csdn.net/zhang854429783/article/details/6785574 很长时间没做web项目都把以前学的那点框架知识忘光了,今天把以前做的一个项目翻出 ...
- Asp.net MVC的Controller激活理解【学习笔记】
DefaultControllerFactory 是MVC默认的Controller查找和激活工厂类我们可以通过自定义ControllerFactory替换DefaultControllerFacto ...
- poj 2778 DNA Sequence AC自动机DP 矩阵优化
DNA Sequence Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 11860 Accepted: 4527 Des ...
- 转:char*, char[] ,CString, string的转换
转:char*, char[] ,CString, string的转换 (一) 概述 string和CString均是字符串模板类,string为标准模板类(STL)定义的字符串类,已经纳入C++标准 ...
- 一个短路求值引起的一个小bug
今天在写一个判断字符串是否回文时因为短路求值问题导致了一个bug,记录如下: 代码如下 bool isPal(char str[],int len) { int begin=0; int end=le ...
- c++调用ffmpeg
在自己编译好ffmpeg库后,已经迫不及待的想尝试用vs2010来调用ffmpeg,在开始调用的时候遇到了些问题,但还是解决了. 配置vs 1.右键工程-属性,在然后选择 配置属性 -> C/C ...
- JAVA的节点流和处理流以及流的关闭顺序
今天在编写hadoop程序的时候,用到了流的处理.关闭流的时候出现了问题: 代码: FSDataInputStream fsin = fs.open(new Path(filein)); FSData ...
- bzoj1912
由于k只有2,所以我们分类讨论显然当k=1时,我们只要连一条最长的路径即可就是树的直径L少走了L-1条边如果k=2时,我们再次连边成环后如果成环路径与上一次的最长路径没有相同的边,那少走的边数是路径长 ...