jz2440:运行第一个QT程序(10)

1.在Ubuntu安装QTCreator(参考正点原子)

wget http://download.qt.io/archive/qt/5.12/5.12.9/qt-opensource-linux-x64-5.12.9.run

chmod +x qt-opensource-linux-x64-5.12.9.run

sudo ./qt-opensource-linux-x64-5.12.9.run

 安装好了QT,但点了QTCreator没有反应,于是我在~/Qt5.12.10/Tools/QtCreator/bin目录下执行./qtcreator,却有如下报错------

zion@lbw:~/Qt5.12.10/Tools/QtCreator/bin$ ./qtcreator
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.

Aborted (core dumped)

解决方案----安装库即可:sudo apt-get install libxcb-xinerama0   即可打开QtCreator

2.第一个Demo-----参照正点原子3.6--发现如下报错

安装:sudo apt-get install libglu1-mesa-dev

          sudo apt-get install libgl1-mesa-dev

即可成功编译,但这里只是在Ubuntu可运行的QT----------------

2.交叉编译环境的搭建

步骤如下
Step 1
Tips:
C++ 对应 arm-none-linux-gnueabi-g++
C 对应 arm-none-linux-gnueabi-gcc

点击Add, 选择compilePath---按图中写好。。。

在这里插入图片描述

** Step 2 **
单击Add选择编译后的Qt中的qmake文件

在这里插入图片描述

** Step 3 **

在这里插入图片描述
9.2 建立Qt界面程序
Step 1
在正常流程建立工程时,在选择编译器时,选择自己配置的,其余正常流程。

 在这里插入图片描述

 Step 2
建好工程后

run qmake

build就是那个锤子logo

有如下报错------

在这里插入图片描述

 我解决比较粗暴:在mainwindows.h添加nullptr定义。。。然后选择build的rebuild Project

3. 运行报错

在这里插入图片描述

------------------执行以下操作(注意红色部分为自己的工具链等的位置)---------------- 

  • cd libiconv-1.14/
  • ./configure --host=arm-none-linux-gnueabi --prefix=/home/china/work/jz2440/qt/libiconv CC=/usr/local/arm/gcc-4.4.3/bin/arm-none-linux-gnueabi-gcc LDFLAGS="-L/usr/local/arm/gcc-4.4.3/bin/arm-none-linux-gnueabi/sys-root/lib" --enable-static
  • make
  • make install

然后把安装目录下的preloadable_libiconv.so文件复制到文件系统的/usr/lib/文件下,在/etc/profile中添加

export LD_PRELOAD=/usr/lib/preloadable_libiconv.so:$TSLIB_ROOT/lib/libts.so

然后需要把开发板的参数改为下图的143x80,这里可能有问题。。。

  • 下载QT的代码:Github 下载下来编译生成可执行文件发送到开发板-----即可运行。。。。

虽然可以运行了,但是屏幕与实际的位置有出入,且位置不对。。

如下图:点击colorB这个按键应该变为紫色,但实际却如下右图,点击左上角才算点击上了,且没有"color B"的文字。。。。

4.屏幕校准

现在我们先运行tslib校准程序,它位于/usr/local/tslib/bin/ts_calibrate ,我们可以输入:

./usr/local/tslib/bin/ts_calibrate

    来运行这个校准程序,之后会在开发板上出现5个校准点,我们依次去点击后,ts_calibrate会完成相关的校准工作,并讲相关结果写入etc/pointercal 这个文件中。
    之后我们就可以运行ts_test来测试触摸屏,命令如下: ./usr/local/tslib/bin/ts_test

然后在运行之前的程序发现可以正常的点击了。。。

现在就剩最后的问题了,不能显示字符。。。。。然后发现开发板的/usr/local/Qt5.6/lib/fonts没有字库,对比在Ubuntu下面的fonts,发现里面有东西的,把字库移到开发板即可。。。

至此,可在开发板跑QT程序了。。。。

おすすめ

転載: blog.csdn.net/m0_37844072/article/details/119583468