1. qt交叉编译,为什么make指令调用的是g++,而不是arm-linux-g++
你找下,是不是在哪个Makefile脚本或类似config.mk的脚本里有个变量,变量值为编译器名字的。
它可能是这样的:
CROSS_COMPILE := arm-linux-
HOSTCXX = g++
这两个名字拼起来才是交叉编译器的名字,如果只用了HOSTCXX或者CROSS_COMPILE为空,它就用的g++了
2. 我用QT软件做了一个记事本,但用CRT软件运行可执行文件说无法找到文件,我想知道问题出在哪一步。老师说
1、首先你需要交叉编译你的Qt工程,(就是编译一个能在你的开发板系统运行的程序)
2、将编译好的文件通过CRT的rz命令传入进去,前提是你的ARM系统支持rz传输功能。
3、加载开发板系统中Qt的环境变量,然后运行你的程序就行了!
3. 如何进行Qt应用程序的交叉编译
1.设置环境变量: PATH=添加为交叉环境下编译后生成的qmake路径,通常和主机的系统是一种架构,同时需要确保交叉gcc编译器在在PATH定义 QMAKESOEC=交叉编译的对象的的平台描述文件,例如makespec/qws/linux-arm-g++ QTDIR=Qt的安装文件,存放这库和头文件 LD_LIBRARY_PATH=存放的是Qt的交叉编译后的库,准备为目标编译链接的库 2。执行环境变量 通常我们都会将以上的设置放置在一个bash脚本中,需要的时候就执行一下。开始编译 1.使用qmake -project来生成项目文件****.pro 2使用qmake来生成Makefile文件 3使用make来编译移植:使用readeif工具来分析目标系统的以来库,然后相关的库到目标文件系统内。通常我们也是采取脚本的方式来完成。 一般而言,凡是有规律的或者重复性的工作,我们都可以采取脚本的方式来解决。
4. 兄弟我最近刚学QT,到了交叉编译这一块,make之后老是出现 下面的错误
交叉编译的时候要加上配置要加上:-embedded arm
例如:
./configure \
-no-pch \
-no-dbus \
-no-nas-sound \
-no-opengl \
-no-sm \
-no-xshape \
-no-xinerama \
-no-xcursor \
-no-xfixes \
-no-xrandr \
-no-xrender \
-no-fontconfig \
-no-xkb \
-no-glib \
-little-endian \
-no-mmx -no-3dnow -no-sse -no-sse2 \
-embedded arm \
-xplatform qws/linux-arm-g++ \
-qconfig smal
希望可以帮助到你