我们运行qt的环境是linux,并且应用于嵌入式,所以我们的所有代码环境将适用于linux
安装Qtcreator的过程太过于简单这里将不做赘述,我们直接开始安装好Qtcreator之后的
首先点击 这个图标 打开 Qtcreator
然后我们将看到这样的界面
我们点击new project然后
按照如图选择
选择我们的项目名字,以及项目保存的路径
然后我们要将这个勾勾打上,选择所有的编译器环境
这个类名我们是可以设置的
点击finish完成项目创建
点击Forms里面的XXX.ui就可以进行界面控件拖拽,可以更好的编程
拖拽完控件以后,鼠标右键点击go to slot可以跳到槽函数进行相应事件的编程
我们在该函数写一个关闭函数调用,点击该按钮的时候将关闭这个窗口
编译,运行
现在实在x86平台运行的,我们现在要将这个应用移植到开发板中,首先要在开发板中设置Qt运行的环境
$ sudo tar Jxvf Qt-Embedded-5.7.0.tar.xz -C /usr/local/
将已经移植好的包解压然后在Linux中设置环境变量
sudo vim /usr/local/Qt-Embedded-5.7.0-env
添加内容:
export QTDIR=/usr/local/Qt-Embedded-5.7.0/
#export QT_QPA_FONTDIR=$QTDIR/lib/fonts
export QMAKEDIR=$QTDIR/bin
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export PATH=$QMAKEDIR/bin:$QTDIR/bin:/usr/local/arm/5.4.0/usr/bin:$PATH
#export QT_QPA_PLATFORM_PLUGIN_PATH=$QTDIR/plugins
#export QT_PLUGIN_PATH=$QTDIR/plugins
#export QMAKESPEC=mkspecs/linux-arm-gnueabi-g++
export QT_SELECT=qt5.7.0-arm
用 source 命令让其在当前终端临时有效
source /usr/local/Qt-Embedded-5.7.0-env
这样还不够,这仅仅是Linux上编译qt到开发板的环境,开发板的运行环境还没有设置
通过 NFS 挂载 Ubuntu 共享的目录到/mnt 下,然后解压移植好的 Qt Qt Embedded 库到 6818 的/usr/local 目录下。
然后解压
设置环境变量
注意 这里设置环境变量指的是 6818 平台里面的 Qt 运行环境变量,在/etc 目录下有个 profile 文件,这个文件是 Linux 系统启动后会自动执行的脚本,我们在这文件末尾添加内容:
export QTDIR=/usr/local/Qt-Embedded-5.7.0
export PATH=$QTDIR/bin:$PATH
export QT_QPA_PLATFORM_PLUGIN_PATH=$QTDIR/plugins
export QT_QPA_PLATFORM_PATH=$QTDIR/plugins
export QT_QPA_PLATFORM=linuxfb
export QT_QPA_FONTDIR=/usr/share/fonts
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
#export QT_QPA_GENERIC_PLUGINS=evdevtouch:/dev/event0
export QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS=/dev/input/event0
export QMLSCENE_DEVICE=softwarecontext
export QML2_IMPORT_PATH=$QTDIR/qml
我们在Linux创建的项目是没有Makefile的,我们需要用qmake命令来生成Makefile文件,如果qmake出现一堆的提示的话
说明没有.pro文件,需要用命令qmake -project来生成
接下来就是make,调用GEC6818环境下的交叉编译链去编译生成可执行文件
这样就设置好了开发版的运行环境已经做好了,接下来将编译好的qt可执行文件传输到开发板就可以运行了