QT下载:http://download.qt-project.org/
qt-everywhere-opensource-src-4.8.4.tar.gz:http://download.qt-project.org/archive/qt/
tslib下载:https://github.com/libts/tslib/releases
编译安装QT-X11-4.5.3
QT-X11-4.5.3是运行于linux平台下用于仿真QT应用程序的软件,这样你便可以在linux平台下把你应用程序都调试好,然后再利用QT4.5.3把应用程序编译成ARM版本下载至开发板,这样你就可以在开发板上运行你的QT应用程序了。
下面是安装步骤:
1、先安装以下包(否则会报错 Basic XLib functionality test failed!):
sudo apt-get install libx11-dev libxext-dev libxtst-dev
2、把qt-x11-opensource-src-4.5.3.tar.gz 拷贝到指定目录下,然后执行以下命令:
#tar zxvf qt-x11-opensource-src-4.5.3.tar.gz
#cd qt-x11-opensource-src-4.5.3
#./configure
#make //一般用时2-3小时,如果你的机子配置不太低的情况下
#make install
一、编译安装tslib-1.0
参考这篇文章:tslib移植实践
二、QT库移植
准备:qt-everywhere-opensource-src-4.8.4.tar.gz
1、解压并进入qt-everywhere-opensource-src-4.8.4。
#tar xzf qt-everywhere-opensource-src-4.8.4.tar.gz
#cd qt-everywhere-opensource-src-4.8.4
2、修改 QT目录下的mkspecs/qws/linux-arm-g++/qmake.conf,添加如下内容(让交叉编译工具链能找到tslib的库和头文件):
# tslib
QMAKE_INCDIR =/usr/tslib4arm/include
QMAKE_LIBDIR =/usr/tslib4arm/lib
QMAKE_LFLAGS =-WI,-rpath,/usr/tslib4arm/lib
3、配置、编译和安装Qt,可以编写以下脚本并运行。Qt安装成功可在/opt/framework/qt/arm路径下看到bin、lib、include等目录。
#!/bin/sh
#mkdir -vp /opt/framework/qt/arm
#echo yes | ./configure -prefix /opt/framework/qt/arm
#-opensource -enbedded arm
#-xplatform qws/linux-arm-g++
#-no-webkit -qt-libtiff -qt-libmng
#-qt-mouse-tslib -qt-mouse-pc
#-no-mouse-linuxtp -no-neon
#-nomake examples
#-nomake docs
#-nomake demos
#-nomake tools
echo yes | ./configure -prefix /opt/framework/qt/arm -opensource -embedded arm -xplatform qws/linux-arm-g++ -no-webkit -qt-libtiff -qt-libmng -qt-mouse-tslib -qt-mouse-pc -no-mouse-linuxtp -no-neon -nomake examples -nomake docs -nomake demos -nomake tools
echo "config finished!"
make && make install
4、在开发板根文件系统opt下创建/opt/framework/qt/arm目录,将/opt/framework/qt/arm目录下的lib目录复制到开发板根文件系统的该目录下。
cd /nf s/rootf
mkdir -p opt/framework/qt/arm
cp /opt/framework/qt/arm/lib ./ -dr
5、编写以下脚本,命名为setenvqt,此脚本用来为开发板设置Qt运行环境。
注意“等号左右边不能有空格,否则Linux会提示错误 bad variable name”
#!/bin/sh
export QWS_DISPLAY=:1
export QT_QWS_FONTDIR=/opt/framework/qt/arm/lib/fonts
export QWS_MOUSE_PROTO="Tslib MouseMan:/dev/event0"
export QWS_KEYBOARD=TTY:/dev/tty1
export HOME=/root
echo "qt init finished!"
将脚本移到开发板根文件系统usr/sbin目录下,在etc/profile中加入
. setenv4qt
这样开发板开机就能加载setenv4qt中的环境变量了。
根文件系统编译镜像指令:mkyaffs2image-128M rootfs rootfs_qt.img
三、嵌入式Qt程序测试
创建一个Helloworld测试程序。
#include #include #include int main(int argc, char* argv[]) { QApplication a(argc, argv); // Qapplication表示一个应用程序,而它的成员函数exec()则用来执行程序以及消息处理 QMainWindow w; //定义一个QmainWindow主窗口对象w QPushButton b(&w); //通过&w,在主窗口上定义QpushButton按钮对象b b.setText("Yangfeiwu.Today is 20190927."); //通过b对象的成员函数setText(),设置按钮名字为Hello QT w.show(); //显示主窗口 return a.exec(); //通过exec()执行程序以及消息处理 } 编译测试程序: /opt/framework/qt/arm/bin/qmake -project /opt/framework/qt/arm/bin/qmake -makefile make 下载到开发板根目录,去开发板执行指令 /HelloQt -qws -fn SIMHEI。 如果报错libts-0.0找不到,则执行以下指令: #find -name libts-0.0* #ln -s /usr/tslib4arm/lib/libts-0.0.so.0 ./opt/framework/qt/arm/lib/libts-0.0.so.0 再次执行,就启动qt程序了。 未完待续
上一篇:ARM集成开发环境eclipse的安装(for Linux)
下一篇:ADS1.2使用jlink调试程序(调试芯片s3c2440 arm9)
设计资源 培训 开发板 精华推荐
- SPC564A-DISP、SPC56A-Discovery Discovery Plus 套件,用于 SPC56 A 系列 - 带有 SPC564A70L7 MCU
- LT1117CM-3.3 低压差负电源稳压器的典型应用
- LT1934EDCB 环路供电 3.3V 电源的典型应用电路,具有额外的隔离输出
- TSSOP20EV,基于 PICmicro 微控制器的 SSOP 评估板
- 使用 Analog Devices 的 LTC3602IFE 的参考设计
- AN2197:用于智能仪表的步进电机驱动器应用电路
- PWM调速器
- 使用 NXP Semiconductors 的 TDA8932 的参考设计
- L78L33AC正压稳压器的电流调节器典型应用
- 具有固定输出电压、2.8V ADP160 超低静态电流、150mA CMOS 线性稳压器的典型应用电路