QT交叉编译环境

QT交叉编译环境,第1张

将安装全套的Qt开发环境,可以在PC端进行qt开发。

Ubuntu14.04的Qt版本为5.2.1,16.04的Qt版本为5.5.1,高版本Qt库可以向下兼容运行低版本工具链编译的程序,因此这里选用5.2.1版本作为编译工具链。

进入Qt工程目录中,目录下会有个<工程名>.pro文件,如果目录中存在<工程名>.pro.user文件,是之前qtcreator生成的配置文件,请先删除。然后运行:

即可完成编译,编译好的程序可以放到树莓派上直接运行。

另外,工程的配置可以通过修改 工程名.pro文件,例如添加链接库,只需要在文件中添加如下选项:

添加c99支持:QMAKE_CFLAGS += -std=c99

为此我写下我在工作中的一点小经验,希望对曾经像我一样困惑的新手们有点帮助,同时也希望能得到大家的指正,

首先得把我们在X86机上调好的程序进行交叉编译,如果在X86上都没有通过的话。。那就不用交叉编译了,(肯定是通不过的),还是到正题吧,

设置好环境变量,我们用以用echo

来查看环境变量,echo

$TMAKEPATH

,如果返回的不是.../qws/linux-arm-g++

的字符的话,我们一定得从新设置,

export

TMAKEPATH=/tmake

的安装路径/qws/linux-arm-g++

,同时QTDIR一定得要指定QTE的安装路径,设置过程如下:

export

QTDIR=...../qt-2.3.7

以上环境设置好后,我们可以使用tmake来生成Makefile,注意这里我们是用tmake,而不是用qmake(注意),tmake工具在tmake包里面。

具体做法,我们可以在命令行下打:

tmake

-o

Makefile

工程名.pro

这样我们就新生成了一个Makefile文件,下一步,我们要打开这个文件,做一些小的修改

1:

将LINK=arm-linux-gcc

改为:LINK=arm-linux-g++

2:将LIBS=$(SUBLIBS)

-L$(QTDIR)/lib

-lm

-lqte这句话改为:

LIBS=$(SUBLIBS)

-L/opt/gcc-2.3.2-glibc-3.3.2/lib

-L$(QTDIR)/lib

-lm

-lqte

加上你的交叉编译的库。。。最后我们可以make了,一个可以在您的板子上可以运行的二进制文件产生了。

至于怎样加到qtopia上去呢。。。待续。。。。。。。。。。。。。。

1.设置环境变量:PATH=添加为交叉环境下编译后生成的qmake路径,通常和主机的系统是一种架构,同时需要确保交叉gcc编译器在在PATH定义QMAKESOEC=交叉编译的对象的的平台描述文件,例如makespec/qws/linux-arm-g++QTDIR=Qt的安装文件,存放这库和头文件LD_LIBRARY_PATH=存放的是Qt的交叉编译后的库,准备为目标编译链接的库2。执行环境变量通常我们都会将以上的设置放置在一个bash脚本中,需要的时候就执行一下。开始编译1.使用qmake -project来生成项目文件****.pro2使用qmake来生成Makefile文件3使用make来编译移植:使用readeif工具来分析目标系统的以来库,然后copy相关的库到目标文件系统内。通常我们也是采取脚本的方式来完成。一般而言,凡是有规律的或者重复性的工作,我们都可以采取脚本的方式来解决。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11139643.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存