发新帖本帖赏金 1.10元(功能说明)我要提问
123下一页
返回列表

Ubuntu下Qt嵌入式交叉编译开发环境搭建

[复制链接]
11835|57
手机看帖
扫描二维码
随时随地手机跟帖
通宵敲代码|  楼主 | 2015-6-20 13:34 | 显示全部楼层 |阅读模式
本帖最后由 通宵敲代码 于 2015-6-20 14:07 编辑

本开发环境可以实现Ubuntu下Qt程序的基本开发,
并可随意编译PC、ARM两种格式的可执行程序。
方便实现程序的上位机调试、与开发板测试。

软加班下载及系统环境版本:

1、linux操作系统环境
         14.04-desktop-i386.iso
  http://yunpan.cn/cQFJdPiqAThpD  访问密码 15ec
2、GCC 编译器
         gcc version 4.8.2
需联网在线安装更新
3、ARM-GCC编译器
         arm-linux-gcc4.4.3.tar.gz
  http://yunpan.cn/cQFJRkbqWgrWu  访问密码 3563
4、Qt开发软件
  QtSdk-offline-linux-x86-v1.2.1.run
  http://yunpan.cn/cQFJuiQpkufHW  访问密码 13dc
5、Qt的ARM编译工具链源码  qt-everywhere-opensource-src-4.8.5.tar.gz
  http://yunpan.cn/cQFjXtt2Vh4DM  访问密码 d234




打赏榜单

sdnumcu 打赏了 0.10 元 2015-07-17

21ic小喇叭 打赏了 1.00 元 2015-06-30

相关帖子

通宵敲代码|  楼主 | 2015-6-20 13:35 | 显示全部楼层
本帖最后由 通宵敲代码 于 2015-6-20 13:38 编辑

这是一段从网上找到的关于Qt各个版本的介绍,介绍了Qt各个版本之间的关系,告诉我们该用哪一个软件包,
个人认为分析得还算不错,发出来与大家共享。


关于各种版本Qt安装程序的说明:
1qt-x11-opensource-src-4.3.2.tar.gz
2qt-embedded-linux-opensource-src-rcl.tar.bz2
3qt-everywhere-opensource-src-4.8.5.tar.gz
4QtSDK-offline-linxu-x86-v1.2.1.run
5qt-creator-linux-x86-opensource-2.5.0.bin
        首先网上有人说安装 12,就可以了,因为1可以提供Qt designer qvbf,然后2可以提供嵌入式编译库,两者安装后就可以搭建一个嵌入式qt开发环境了,其实没错,不过已经过时了,因为现在有了Qt creatorQt creator 就包含了 Qt designerqvbf,因此我们仅仅安装5的版本就可以替代1的安装。不过2也还是要安装,不过了,像2那种版本的编译库现在已经有了更加齐全的库替代,那就是3了。而4就是5的升级版了,它不仅可以包含5拥有的所有东西,而且能开发嵌入式应用程序,不过暂时还没测试。

QtSDK1.2.1所含工具:
(位于“Qt开发环境安装包”文件夹下)
1Qt(4.8.1版本)
2、塞班Symbian手机和诺基亚N9模拟器
3Qt Creator集成开发环境(2.4.1版本)
4Qt Mobility(1.2版本)
5Qt集成开发工具集
6、远程编译器

使用特权

评论回复
通宵敲代码|  楼主 | 2015-6-20 13:35 | 显示全部楼层
本帖最后由 通宵敲代码 于 2015-6-20 14:06 编辑

要搭建Qt开发环境,首先需要一个Linux系统,此处我们选用最新的长期支持版本Ubuntu14.04。
安装过程与以前的版本相同,便不再赘述。

安装Qt程序需要用到GCC编译器,
因此在安装Qt直线我们要先更新一下系统的GCC工具链。
使用sudo apt-get update 更新软件源,
然后执行sudo apt-get install gcc 安装GCC工具链。
使用gcc -v命令可查看GCC版本,并可确认是否安装成功。

其次,程序安装还需要一些必要的链接库,即依赖包。
(可使用sudo apt-get install ****安装)
build-essential
libglib2.0-dev
libSM-dev
libxrender-dev
libfontconfig1-dev
libxext-dev
libx11-dev
libxtst-dev


之后便可执行./QtSdk-offline-linux-x86-v1.2.1.run进行Qt程序的安装,
安装过程中若提示不是可执行文件,或没有可执行权限,可参考如下办法。
增加文件可执行权限,sudo chmod 755 QtSdk-offline-linux-x86-v1.2.1.run

安装完成后,可得到一个Qt开发软件,并可进行Qt的上位机程序开发。
QQ截图20150620140536.png

使用特权

评论回复
通宵敲代码|  楼主 | 2015-6-20 13:35 | 显示全部楼层
本帖最后由 通宵敲代码 于 2015-6-20 15:03 编辑

然而,我们最主要的目的是要变编译出可以在开发板上运行的程序,因此我们需要增加arm-linux-gcc4.4.3.tar.gz交叉编译工具。
并添加Qt程序ARM版本的交叉编译器,已便将程序编译成ARM版本。


其中arm-linux-gcc4.4.3.tar.gz交叉编译工具链是已经编译好的,
我们只需将其解压合适的位置,并在系统的环境变量中增加路径即可。
首先新建文件夹sudo mkdir /usr/local/arm-linux-gcc-4.4.3
然后将arm-linux-gcc4.4.3.tar.gz拷贝到文件夹下,
执行sudo tar -zxvf arm-linux-gcc4.4.3.tar.gz解压工具链。
最后在~/.profile或~/.basgrc文件最后添加如下语句即可
export PATH=$PATH:/usr/local/arm-linux-gcc-4.4.3/bin
如果使用root用户,可在/root/.profile或/root/.bashrc中添加。
最后执行arm-linux-gcc -v可查看工具链版本并验证是否安装成功。

然后我们便要添加Qt的ARM编译器了。
首先将qt-everywhere-opensource-src-4.8.5.tar.gz拷贝到/usr/local下,
执行sudo tar -zxvf qt-everywhere-opensource-src-4.8.5.tar.gz解压。
然后执行sudo mv qt-everywhere-opensource-src-4.8.5.tar.gz qt-arm
并进入qt-arm目录下。

执行如下执行对编译其进行参数配置。
# ./configure \
-prefix /usr/local/Trolltech/QtEmbedded-4.8.5-arm \
-opensource \
-confirm-license \
-release -shared \
-embedded arm \
-xplatform qws/linux-arm-g++ \
-depths 16,18,24 \
-fast \
-optimized-qmake \
-pch \
-qt-sql-sqlite \
-qt-libjpeg \
-qt-zlib \
-qt-libpng \
-qt-freetype \
-little-endian -host-little-endian \
-no-qt3support \
-no-libtiff -no-libmng \
-no-opengl \
-no-mmx -no-sse -no-sse2 \
-no-3dnow \
-no-openssl \
-no-webkit \
-no-qvfb \
-no-phonon \
-no-nis \
-no-opengl \
-no-cups \
-no-glib \
-no-xcursor -no-xfixes -no-xrandr -no-xrender \
-no-separate-debug-info \
-nomake examples -nomake tools -nomake docs


如果放弃配置,则使用命令:# make confclean

配置完成后,执行make命令进行编译,此过程需要2个小时左右。
如果中间不提示错误,请耐心等待。

编译完成后,便可执行make install安装编译工具,
安装完之后,会在/usr/local/Trolltech/
下找到我们的编译工具QtEmbedded-4.8.5-arm。


此时便可打开Qt程序,在程序选项中增加编译工具

添加工具链接,参考路径设置
工具链.png

添加Qt版本,参考路径设置
Qt版本.png


之后便可在工程项目中添加不同的编译器进行编译了
项目.png










使用特权

评论回复
通宵敲代码|  楼主 | 2015-6-20 13:35 | 显示全部楼层
本帖最后由 通宵敲代码 于 2015-6-20 14:33 编辑

环境搭建完成之后,我们便可以选择不同的编译器对程序编译。不同的程序编译出来之后,其可执行文件可使用file命令进行查看,
分辨会有如下提示,告诉用改程序的指令构架、编译器等信息。
如下图:PC版本的程序
PC-环境.png

ARM版本的程序
ARM-环境.png

之后我们只需将ARM程序及必要的连接库拷贝到开发板上相应的位置,
就可以执行我们自己的Qt程序了:lol:lol:lol

使用特权

评论回复
wt.liu| | 2015-6-20 16:41 | 显示全部楼层
Ubuntu12.0好不好装?

使用特权

评论回复
那就地方iv| | 2015-6-21 10:40 | 显示全部楼层
谢谢楼主整理分享

使用特权

评论回复
lfjwfm| | 2015-6-21 12:38 | 显示全部楼层
lz厉害

使用特权

评论回复
mini1986| | 2015-6-23 13:09 | 显示全部楼层
飘过......

使用特权

评论回复
通宵敲代码|  楼主 | 2015-6-23 19:49 | 显示全部楼层
wt.liu 发表于 2015-6-20 16:41
Ubuntu12.0好不好装?

都一样的:lol

使用特权

评论回复
zhangmangui| | 2015-6-25 21:49 | 显示全部楼层
代码又要发威了  加油

使用特权

评论回复
通宵敲代码|  楼主 | 2015-6-25 22:48 | 显示全部楼层
zhangmangui 发表于 2015-6-25 21:49
代码又要发威了  加油

;P小打小闹,闹着玩呢。
大叔最近又在玩什么啊

使用特权

评论回复
zhangmangui| | 2015-6-26 22:07 | 显示全部楼层
通宵敲代码 发表于 2015-6-25 22:48
小打小闹,闹着玩呢。
大叔最近又在玩什么啊

没玩什么    混日子呢

使用特权

评论回复
通宵敲代码|  楼主 | 2015-6-26 22:16 | 显示全部楼层
zhangmangui 发表于 2015-6-26 22:07
没玩什么    混日子呢

:L混日子可不是好孩子

使用特权

评论回复
深圳闪电侠| | 2015-6-26 23:11 | 显示全部楼层
很不错 值得保存

使用特权

评论回复
sucaptain| | 2015-6-27 12:04 | 显示全部楼层

使用特权

评论回复
jstiger| | 2015-6-27 17:19 | 显示全部楼层
正在学linux,好人。

使用特权

评论回复
angus118| | 2015-6-27 21:39 | 显示全部楼层
代码兄都不在群里聊了,原来是在干大事、

使用特权

评论回复
通宵敲代码|  楼主 | 2015-6-27 23:48 | 显示全部楼层
angus118 发表于 2015-6-27 21:39
代码兄都不在群里聊了,原来是在干大事、

没办法,得解决温饱问题啊,
不能拖社会主义后退了!

使用特权

评论回复
sdnumcu| | 2015-7-3 08:19 | 显示全部楼层
代码兄厉害啊,赞一个,以后多在嵌入式发帖子

使用特权

评论回复
发新帖 本帖赏金 1.10元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:年轻不是资本,奋斗才是良策!

301

主题

7532

帖子

67

粉丝