目前只实现了一键编译、部署应用到开发板并运行的功能,一键调试还没有搞定。这一节讲一下在smart210开发板上配置一键部署qt应用程序的过程。
首先是qte库的编译,源码选用的是友善之臂光盘里的arm-qte-4.8.5-20131207.tar.gz。编译时首先配置好交叉编译器的路径,这个手册里都有说明。下面看我解压到的路径。
ws@ubuntu:/opt/FriendlyARM/mini210/linux/arm-qte-4.8.5$ ls build.sh qt-everywhere-opensource-src-4.8.5 font qt-everywhere-opensource-src-4.8.5.tar.gz mktarget其中qt-everywhere-opensource-src-4.8.5为qt4.8.5的源码目录,build.sh为编译脚本,修改脚本的内容,加入qml的支持。
#/bin/bash QTVERSION=4.8.5 PKGNAME=qt-everywhere-opensource-src-${QTVERSION} QTPACKAGE=${PKGNAME}.tar.gz DESTDIR=/usr/local/Trolltech/QtEmbedded-${QTVERSION}-arm # [ -d ${PKGNAME} ] && rm -rf ${PKGNAME} # [ -d ${DESTDIR} ] && rm -rf ${DESTDIR} # rm -rf qt-everywhere-opensource-src-${QTVERSION} # tar xvzf $QTPACKAGE #---------------------------------------------------------- cd qt-everywhere-opensource-src-${QTVERSION} echo yes | ./configure -opensource -embedded arm -xplatform qws/linux-arm-g++ -webkit -qt-gfx-transformed -qt-libtiff -qt-libmng -qt-mouse-tslib -qt-mouse-pc -no-mouse-linuxtp -no-neon -importdir /opt/FriendlyARM/mini210/linux/arm-qte-4.8.5/qt-everywhere-opensource-src-4.8.5/qml make && make install
ws@ubuntu:/usr/local/Trolltech/QtEmbedded-4.8.5-arm$ ls bin demos examples include lib mkspecs plugins tests translations ws@ubuntu:/usr/local/Trolltech/QtEmbedded-4.8.5-arm$
# /bin/qtopia & echo " " > /dev/tty1 # echo "Starting Qtopia, please waiting..." > /dev/tty1下面开始虚拟机上qt creator软件的配置,需要配置的是Tools->Options->Build&Run这个里面的选项,指定好Qt Versions, Compilers, Kits这几个选项即可,如下图所示。
其中Device这个选项是需要我们创建的,在Options->Devices中添加一个设备,配置如下。其中Host name需要设置为开发板的ip地址。
然后是在创建工程时要选择在这个设备上创建,另外需要在工程文件*.pro中添加如下两行代码,来指定部署程序的位置。这里部署到开发板上的/apps/目录下。
# Installation path INSTALLS += target target.path = /apps/最后在软件的侧边栏中的Projects选项中,加上运行qt程序的“-qws”参数。
然后就可实现从PC机到开发板一键部署运行了。
其中部署时遇到sftp连接不上的情况,最后查得开发板文件系统中的sshd_config文件有一句有误,sftp-server文件的位置没有设置对,更正如下。
# override default of no subsystems Subsystem sftp /usr/local/libexec/sftp-server
source /bin/setqt4env
./程序名 -qws