首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

Qt开发环境QtCreator的安装、配置【涉及到利用Buildroot编译出eMMC.img、zImage、dtb、u-boot、根文件系统和Qt配置时需要的qmake文件】

  • 25-03-05 03:01
  • 2711
  • 5112
blog.csdn.net

目录

  • 利用Buildroot交叉编译出emmc.img文件和配置Qt需要的文件
    • 交叉编译方法和过程
    • 目录`/output/images`下的文件的说明
      • emmc.img文件说明
    • 目录`output/host/bin`下的文件的说明
  • Qt-5.12.9(QtCreator)的下载
  • 在Ubuntu上安装QtCreator(QT-Developer and Desinger Tools)
  • 配置Qt开发工具(QT-Developer and Desinger Tools)
    • 启动QtCreator
    • 设置C编译器
    • 设置C++编译器
    • 检查C和C++编译器是否配置好
    • 设置调试器(Debuggers)
    • 设置"Qt versions"的qmake【添加之前用Buildroot交叉编译出的Qt的SDK(qmake)】
    • 配置Kits标签
  • 用实例进行测试
  • 工程换位置后一定要更换一下Build directory的位置

利用Buildroot交叉编译出emmc.img文件和配置Qt需要的文件

交叉编译方法和过程

进入由100ask提供的Buildroot的源码目录:

cd /home/book/100ask_imx6ull-sdk/Buildroot_2020.02.x
  • 1

目录Buildroot_2020.02.x未进行编译操作前我已压缩进行备份,百度网盘下载链接:
https://pan.baidu.com/s/1_1bUKQsHb9LUxpqZx1hUjw?pwd=iief
在这里插入图片描述
然后依次运行下面的命令:

make clean
  • 1

在这里插入图片描述

make 100ask_imx6ull_pro_ddr512m_systemV_qt5_defconfig
  • 1

这句命令是进行交叉编译前的配置:
在这里插入图片描述
然后make

make all -j4
  • 1

-j4 参数指定使用4个线程并行编译以加快速度。

这里要花很久的时间(我第1次构建用了7个小时,所以最后晚上睡觉前进行),并且因为用的是4个线程并行编译,所以CPU负荷比较重,建议开始前用家用风扇对准主机吹。
2025-01-26 14:26:07 开始启动编译…
2025-01-26 21:57:25 编译结束
用时7个小时…,所以下次重新构建的话还是晚上睡觉前进行吧。幸运的是,Buildroot采用的是增量构建机制,所以后面编译时,它只会重新编译修改了代码的部分。
构建完成的Buildroot_2020.02.x目录我进行了压缩并上传到了百度网盘,下载链接如下:
https://pan.baidu.com/s/1pkdRznvSRhyR7kZkzbLQkA?pwd=puz4
这个压缩文件有点大,9.79GB~

编译完成后的最后几条信息如下图所示:
在这里插入图片描述
构建完成的Buildroot_2020.02.x目录我进行了压缩并上传到了百度网盘,下载链接如下:
https://pan.baidu.com/s/1pkdRznvSRhyR7kZkzbLQkA?pwd=puz4
这个压缩文件有点大,9.79GB~

最后构建编译出的文件在目录 ./Buildroot_2020.02.x/output 中,如下图所示:
在这里插入图片描述

目录/output/images下的文件的说明

目录Buildroot_2020.02.x/output/images的截图如下:
在这里插入图片描述
在目录Buildroot_2020.02.x/output/images下有在博文 http://iyenn.com/rec/1709284.html 中直接利用内核源码生成过的内核镜像文件zImage、基于IMX6ULL的各个型号的开发板的设备树二进制文件(dtb文件)、
此外还有u-boot文件、根文件系统、进行eMMC烧写时需要的img文件100ask-imx6ull-pro-512d-systemv-v1.img。
这里要重点说明下进行eMMC烧写时需要的img文件100ask-imx6ull-pro-512d-systemv-v1.img:

emmc.img文件说明

文件100ask-imx6ull-pro-512d-systemv-v1.img是进行eMMC烧写时需要的img文件,它里面包含着一个完整的系统,相当于它是把加载程序(boot)、内核(zImage)、设备树文件、根文件系统合到一个文件中了,这样我们在烧写只需要把这个文件烧写到我们的eMMC设备,然后整个嵌入式系统就能完整在开发板上运行了。
关于emmc.img和eMMC的详细介绍,请参见我的另一篇博文 http://iyenn.com/rec/1709263.html

如果你现在的开发板上没有配置Qt运行环境,那么就需要把文件100ask-imx6ull-pro-512d-systemv-v1.img烧录到开发板上,相当于更新开发板的加载程序(boot)、内核(zImage)、设备树文件、根文件。

如果需要具体的烧录img文件的方法,请参考下面这个视频【3分20秒开始看】:
https://www.bilibili.com/video/BV1HT421k7GW?vd_source=8fb767d1739ea6b35c7177ba909eed36&p=5

那么如何判断开发板上有没有配置Qt运行环境呢?
运行下面的命令:

find /usr/lib /usr/local/lib -name "libQt5*"
  • 1

结果如下:

/usr/lib/libQt5Bluetooth.so.5
/usr/lib/libQt5Bluetooth.so.5.12
/usr/lib/libQt5Bluetooth.so.5.12.7
/usr/lib/libQt5Charts.so.5
/usr/lib/libQt5Charts.so.5.12
/usr/lib/libQt5Charts.so.5.12.7
/usr/lib/libQt5Concurrent.so.5
/usr/lib/libQt5Concurrent.so.5.12
/usr/lib/libQt5Concurrent.so.5.12.7
/usr/lib/libQt5Core.so.5
/usr/lib/libQt5Core.so.5.12
/usr/lib/libQt5Core.so.5.12.7
/usr/lib/libQt5DBus.so.5
/usr/lib/libQt5DBus.so.5.12
/usr/lib/libQt5DBus.so.5.12.7
/usr/lib/libQt5ExtSerialPort.so.1
/usr/lib/libQt5ExtSerialPort.so.1.2
/usr/lib/libQt5ExtSerialPort.so.1.2.0
/usr/lib/libQt5Gui.so.5
/usr/lib/libQt5Gui.so.5.12
/usr/lib/libQt5Gui.so.5.12.7
/usr/lib/libQt5Location.so.5
/usr/lib/libQt5Location.so.5.12
/usr/lib/libQt5Location.so.5.12.7
/usr/lib/libQt5Multimedia.so.5
/usr/lib/libQt5Multimedia.so.5.12
/usr/lib/libQt5Multimedia.so.5.12.7
/usr/lib/libQt5MultimediaGstTools.so.5
/usr/lib/libQt5MultimediaGstTools.so.5.12
/usr/lib/libQt5MultimediaGstTools.so.5.12.7
/usr/lib/libQt5MultimediaQuick.so.5
/usr/lib/libQt5MultimediaQuick.so.5.12
/usr/lib/libQt5MultimediaQuick.so.5.12.7
/usr/lib/libQt5MultimediaWidgets.so.5
/usr/lib/libQt5MultimediaWidgets.so.5.12
/usr/lib/libQt5MultimediaWidgets.so.5.12.7
/usr/lib/libQt5Network.so.5
/usr/lib/libQt5Network.so.5.12
/usr/lib/libQt5Network.so.5.12.7
/usr/lib/libQt5OpenGL.so.5
/usr/lib/libQt5OpenGL.so.5.12
/usr/lib/libQt5OpenGL.so.5.12.7
/usr/lib/libQt5Positioning.so.5
/usr/lib/libQt5Positioning.so.5.12
/usr/lib/libQt5Positioning.so.5.12.7
/usr/lib/libQt5PositioningQuick.so.5
/usr/lib/libQt5PrintSupport.so.5
/usr/lib/libQt5PositioningQuick.so.5.12
/usr/lib/libQt5PositioningQuick.so.5.12.7
/usr/lib/libQt5PrintSupport.so.5.12
/usr/lib/libQt5PrintSupport.so.5.12.7
/usr/lib/libQt5Qml.so.5
/usr/lib/libQt5Qml.so.5.12
/usr/lib/libQt5Qml.so.5.12.7
/usr/lib/libQt5Quick.so.5
/usr/lib/libQt5Quick.so.5.12
/usr/lib/libQt5Quick.so.5.12.7
/usr/lib/libQt5QuickControls2.so.5
/usr/lib/libQt5QuickControls2.so.5.12
/usr/lib/libQt5QuickControls2.so.5.12.7
/usr/lib/libQt5QuickParticles.so.5
/usr/lib/libQt5QuickParticles.so.5.12
/usr/lib/libQt5QuickParticles.so.5.12.7
/usr/lib/libQt5QuickShapes.so.5
/usr/lib/libQt5QuickShapes.so.5.12
/usr/lib/libQt5QuickShapes.so.5.12.7
/usr/lib/libQt5QuickTemplates2.so.5
/usr/lib/libQt5QuickTemplates2.so.5.12
/usr/lib/libQt5QuickTemplates2.so.5.12.7
/usr/lib/libQt5QuickTest.so.5
/usr/lib/libQt5QuickTest.so.5.12
/usr/lib/libQt5QuickTest.so.5.12.7
/usr/lib/libQt5QuickWidgets.so.5
/usr/lib/libQt5QuickWidgets.so.5.12
/usr/lib/libQt5QuickWidgets.so.5.12.7
/usr/lib/libQt5Script.so.5
/usr/lib/libQt5Script.so.5.12
/usr/lib/libQt5Script.so.5.12.7
/usr/lib/libQt5ScriptTools.so.5
/usr/lib/libQt5ScriptTools.so.5.12
/usr/lib/libQt5ScriptTools.so.5.12.7
/usr/lib/libQt5Scxml.so.5
/usr/lib/libQt5Scxml.so.5.12
/usr/lib/libQt5Scxml.so.5.12.7
/usr/lib/libQt5Sensors.so.5
/usr/lib/libQt5Sensors.so.5.12
/usr/lib/libQt5Sensors.so.5.12.7
/usr/lib/libQt5SerialBus.so.5
/usr/lib/libQt5SerialBus.so.5.12
/usr/lib/libQt5SerialBus.so.5.12.7
/usr/lib/libQt5SerialPort.so.5
/usr/lib/libQt5SerialPort.so.5.12
/usr/lib/libQt5SerialPort.so.5.12.7
/usr/lib/libQt5Sql.so.5
/usr/lib/libQt5Sql.so.5.12
/usr/lib/libQt5Sql.so.5.12.7
/usr/lib/libQt5Svg.so.5
/usr/lib/libQt5Svg.so.5.12
/usr/lib/libQt5Svg.so.5.12.7
/usr/lib/libQt5Test.so.5
/usr/lib/libQt5Test.so.5.12
/usr/lib/libQt5Test.so.5.12.7
/usr/lib/libQt5VirtualKeyboard.so.5
/usr/lib/libQt5VirtualKeyboard.so.5.12
/usr/lib/libQt5VirtualKeyboard.so.5.12.7
/usr/lib/libQt5WebChannel.so.5
/usr/lib/libQt5WebChannel.so.5.12
/usr/lib/libQt5WebChannel.so.5.12.7
/usr/lib/libQt5WebKit.so.5
/usr/lib/libQt5WebKit.so.5.9
/usr/lib/libQt5WebKit.so.5.9.1
/usr/lib/libQt5WebKitWidgets.so.5
/usr/lib/libQt5WebKitWidgets.so.5.9
/usr/lib/libQt5WebKitWidgets.so.5.9.1
/usr/lib/libQt5WebSockets.so.5
/usr/lib/libQt5WebSockets.so.5.12
/usr/lib/libQt5WebSockets.so.5.12.7
/usr/lib/libQt5Widgets.so.5
/usr/lib/libQt5Widgets.so.5.12
/usr/lib/libQt5Widgets.so.5.12.7
/usr/lib/libQt5Xml.so.5
/usr/lib/libQt5Xml.so.5.12
/usr/lib/libQt5Xml.so.5.12.7
/usr/lib/libQt5XmlPatterns.so.5
/usr/lib/libQt5XmlPatterns.so.5.12
/usr/lib/libQt5XmlPatterns.so.5.12.7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126

从 find 命令输出结果来看,开发板上已经安装了丰富的 Qt-5.1 库,包括核心模块 (libQt5Core)、图形模块 (libQt5Gui 和 libQt5Widgets)、网络模块 (libQt5Network)、多媒体模块 (libQt5Multimedia) 以及其他常用模块(如 libQt5WebKit、libQt5Charts 等)。这些库是支持 Qt 应用程序运行的必要条件。那既然这样,就没必要去烧写含Qt的emmc.img文件了。

目录output/host/bin下的文件的说明

这个目录下的/home/book/100ask_imx6ull-sdk/Buildroot_2020.02.x/output/host/bin/qmake是我们后面配置QtCreator需要的文件:
在这里插入图片描述

Qt-5.12.9(QtCreator)的下载

百度网盘下载链接:
https://pan.baidu.com/s/1uDkzyU_HGy7hYsGrLcQMnA?pwd=3h2

在Ubuntu上安装QtCreator(QT-Developer and Desinger Tools)

把安装文件复制到Ubuntu中:
在这里插入图片描述
右键→Run
在这里插入图片描述
下图中点击Next…
在这里插入图片描述
在下图红框中的位置填写注册帐号的注册信息:
在这里插入图片描述
在这里插入图片描述
验证邮箱:
在这里插入图片描述
同意使用条款:
在这里插入图片描述
下图中击点Next…
在这里插入图片描述
确认安装位置:
在这里插入图片描述
不妨就用默认的安装位置 /home/book/Qt5.12.9

下图中不用勾选Qt 5.12.9,Qt 5.12.9的意思是在Ubuntu中安装Qt的运行环境。继续Next…
在这里插入图片描述
下图中同意License使用条款:
在这里插入图片描述
下图中点击Install:
在这里插入图片描述
安装中…
在这里插入图片描述
下图中取消“Launch Qt Creator”,然后点击Finish
在这里插入图片描述
然后点击左下角的程序目录,就能发现Qt的开发工具了:
在这里插入图片描述
在这里插入图片描述
至此,就成功完成QtCreator(QT-Developer and Desinger Tools)的安装了,然后我们需要对这个工具进行配置,不过配置前可以把安装包先删除,毕竟安装包还是有1.31GB的大小,没必要在那里占据我们的磁盘空间。

配置Qt开发工具(QT-Developer and Desinger Tools)

启动QtCreator

找到QtCreator…
在这里插入图片描述
在这里插入图片描述
启动QtCreator…

在这里插入图片描述

设置C编译器

在 QtCreator 界面中,依次点击 tools -> Options:
在这里插入图片描述
然后在Options中,选择 Kits→Compilers
在这里插入图片描述
添加自定义的C编译器:
Add→Custom→C
在这里插入图片描述
在这里插入图片描述
上图的Name不妨写为Custom_C;
Compiler path的所在目录就是在博文 http://iyenn.com/rec/1709220.html 中的 PATH值:
在这里插入图片描述
即:

/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin
  • 1

填写完成Compiler path后把对话框往右展开得到Browser:
在这里插入图片描述
展开后的截图如下:
在这里插入图片描述
在这里插入图片描述
点击上图中的Browser,去目录/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin中选择具体的C编译器:
在这里插入图片描述
在这里插入图片描述
据此,我们可以复制得到C编译器的完整路径为:

/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin/arm-buildroot-linux-gnueabihf-gcc
  • 1

下次设置C编译器就可以直接复制上面这个路径填上了,就不用像上面这样通过其所在目录和Browser去查找了。

接下来设置Make path,也就是Ubuntu系统中的make工具对应的程序所在的路径,怎么样找到这个路径呢? 用下面这个命令就可以找到:

whereis make
  • 1

在这里插入图片描述

book@100ask:~$ whereis make
make: /usr/bin/make /usr/share/man/man1/make.1.gz
  • 1
  • 2

上面的运行结果中:
/usr/bin/make是make 可执行文件的路径,即 make 程序本身的位置。
/usr/share/man/man1/make.1.gz:make 命令的 man 手册页(即用户手册),它存储在 /usr/share/man 目录下,具体来说:

  • man1/:表示该手册页属于 section 1(用户命令)。在 man 手册中,section 1 主要用于用户可以直接执行的命令,如 ls、make 等。
  • make.1.gz:
    • make.1:代表 make 的 man 手册页,属于 section 1。
    • .gz:表示该文件经过 gzip 压缩,以节省磁盘空间。

所以在Make path这里填:

/usr/bin/make
  • 1

在这里插入图片描述
接下来设置ABI的属性,关于ABI的介绍,见我的另一篇博文:
http://iyenn.com/rec/1709285.html
具体的设置见下面这幅图:
在这里插入图片描述
然后点击右下角的Apply→OK,完成对C编译器的配置:
在这里插入图片描述

设置C++编译器

因为Qt 是一个基于 C++ 的跨平台应用开发框架,它主要使用 C++ 作为核心编程语言,所以我们还需要设置C++编译器。
在 QtCreator 界面中,依次点击 tools -> Options:
在这里插入图片描述
然后在Options中,选择 Kits→Compilers
在这里插入图片描述
添加自定义的C++编译器:
Add→Custom→C++
在这里插入图片描述
Name填写为Custom_C++
在这里插入图片描述
Compiler path的所在目录就是在博文 http://iyenn.com/rec/1709220.html 中的 PATH值:
在这里插入图片描述
即:

/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin
  • 1

填写完成Compiler path后把对话框往右展开得到Browser:
请添加图片描述

展开后的截图如下:
请添加图片描述
请添加图片描述
点击上图中的Browser,去目录/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin中选择具体的C++编译器,找到arm-buildroot-linux-gnueabihf-g++
在这里插入图片描述
如果路径不变的话,以后可以直接复制下面的路径进行填写:

/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin/arm-buildroot-linux-gnueabihf-g++
  • 1

在这里插入图片描述
接下来设置Make path,也就是Ubuntu系统中的make工具对应的程序所在的路径,怎么样找到这个路径呢? 用下面这个命令就可以找到:

whereis make
  • 1

在这里插入图片描述

book@100ask:~$ whereis make
make: /usr/bin/make /usr/share/man/man1/make.1.gz
  • 1
  • 2

上面的运行结果中:
/usr/bin/make是make 可执行文件的路径,即 make 程序本身的位置。
/usr/share/man/man1/make.1.gz:make 命令的 man 手册页(即用户手册),它存储在 /usr/share/man 目录下,具体来说:

  • man1/:表示该手册页属于 section 1(用户命令)。在 man 手册中,section 1 主要用于用户可以直接执行的命令,如 ls、make 等。
  • make.1.gz:
    • make.1:代表 make 的 man 手册页,属于 section 1。
    • .gz:表示该文件经过 gzip 压缩,以节省磁盘空间。

所以在Make path这里填:

/usr/bin/make
  • 1

在这里插入图片描述
接下来设置ABI的属性,关于ABI的介绍,见我的另一篇博文:
http://iyenn.com/rec/1709285.html
具体的设置见下面这幅图:
在这里插入图片描述
然后点击右下角的Apply→OK,完成对C编译器的配置:
在这里插入图片描述

检查C和C++编译器是否配置好

在 QtCreator 界面中,依次点击 tools -> Options:
在这里插入图片描述
Kits→Compilers:
在这里插入图片描述
从上面的截图中我们可以看出,我们已经添加了Manual下的C和C++编译器,名称分别为Custom_C和Custom_C++。

设置调试器(Debuggers)

在 QtCreator 界面中,依次点击 tools -> Options:
在这里插入图片描述
然后在Options中,选择 Kits→Debuggers
在这里插入图片描述
点击右边的Add:
在这里插入图片描述
在这里插入图片描述
Name那里不妨填为Debugger_01

在这里插入图片描述
Path那里和C编译器和C++编译器中的设置一样,先填上在博文 http://iyenn.com/rec/1709220.html 中的 PATH值:
在这里插入图片描述
即:

/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin
  • 1

在这里插入图片描述
然后点击Browser,找到arm-buildroot-linux-gnueabihf-gdb
在这里插入图片描述
如果下次配置时,相关路径没有变的话,可以直接复制下面的路径填写上:

/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin/arm-buildroot-linux-gnueabihf-gdb
  • 1

在这里插入图片描述
然后点击右下方的OK
在这里插入图片描述

设置"Qt versions"的qmake【添加之前用Buildroot交叉编译出的Qt的SDK(qmake)】

先找出编译出的Qt的SDK在哪里(即qmake文件在哪里),运行下面的命令:

cd /home/book/100ask_imx6ull-sdk/Buildroot_2020.02.x/output
  • 1
find -name qmake
  • 1

在这里插入图片描述

./build/qt5base-5.12.8/tests/auto/tools/qmake
./build/qt5base-5.12.8/examples/qmake
./build/qt5base-5.12.8/bin/qmake
./build/qt5base-5.12.8/qmake
./build/qt5base-5.12.8/qmake/doc/snippets/qmake
./build/qt5base-5.12.8/qmake/qmake
./build/qt5webkit-5.9.1/Tools/qmake
./host/bin/qmake
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

上面运行结果中的:

./host/bin/qmake
  • 1

为了得到完整路径,我们继续运行下面的命令:

cd host/bin/
  • 1
pwd
  • 1

在这里插入图片描述
得到qmake文件所在目录如下:

/home/book/100ask_imx6ull-sdk/Buildroot_2020.02.x/output/host/bin
  • 1

在 QtCreator 界面中,依次点击 tools -> Options:
在这里插入图片描述
然后在Options中,选择 Kits→Qt Versions
在这里插入图片描述
点击右侧的Add:
在这里插入图片描述
在这里插入图片描述在上面截图的界面中选择下面这个目录:

/home/book/100ask_imx6ull-sdk/Buildroot_2020.02.x/output/host/bin
  • 1

在这里插入图片描述
选择上面截图中的qmake:
在这里插入图片描述
然后点击右下角的OK
在这里插入图片描述

配置Kits标签

在 QtCreator 界面中,依次点击 tools -> Options:
在这里插入图片描述
然后在Options中,选择 Kits→Kits
在这里插入图片描述
点击右侧的Add:
在这里插入图片描述
点击Add后的界面如下:
在这里插入图片描述
Name那里不妨填为qt_kit_swh_01
在这里插入图片描述
接下来的File system name不用填。
在这里插入图片描述

Device type那里就按教程先设置为Desktop,这个应该只是标记下这个Kits标签的设备类型,应该没有什么实质性的作用。当然,如果是我来设置的话,这里肯定选择Generic Linux Device了,但是因为我是第一次用Qt,所以需要比较严格地按教程来设置,以避免不期待的异常。
在这里插入图片描述

设置Sysroot(注意:根据下面的叙述,实际上不需要设置Sysroot):
注意:后来我在博文 http://iyenn.com/rec/1709286.html 编译QtCreator的工程时查看工程的Makfile文件发现并没有用到我设置的Sysroot,而是根据前面设置的qmake自动解析出了其在Buildroot中生成的gcc交叉编译工具中的sysroot目录,然后使用了这个目录,所以这里并不需要设置,留空就好,设置了实测在编译工程时也没用到你设置的这个。

QtCreator的工程中的Makefile中使用的是下面这个sysroot目录:

/home/book/100ask_imx6ull-sdk/Buildroot_2020.02.x/output/host/arm-buildroot-linux-gnueabihf/sysroot
  • 1

在这里插入图片描述
在这里插入图片描述
正是因为这里设置了没用,所以要注意,请保证下面三者的版本号相同。
①Buildroot中使用的Linux的版本;
②gcc交叉编译工具中的版本;
③开发板上运行的Linux系统的版本;
实际上最重要是要保证①和③的版本号相同,因为Buildroot会构建生成gcc交叉编译工具,如果你现在用的gcc交叉编译工具的版本号与①和③不一致,那么你就使用Buildroot构建生成的gcc交叉编译工具就行了,这样②和①的版本号就一致了。
这三个版本号的查看方法见博文:http://iyenn.com/rec/1709287.html
从上面这篇博文中可以看出对于我的开发环境而言,①②③所使用的Linux版本都是4.9.88。

如果按照开发板商提供的教程需要按下面设置(注意:根据上面的叙述,实际上是不需要设置Sysroot的):
它就是在博文 http://iyenn.com/rec/1709220.html 中的 PATH值:

/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin
  • 1

对应的目录/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/下的目录:arm-buildroot-linux-gnueabihf/sysroot
在这里插入图片描述
即完整路径为:

/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/arm-buildroot-linux-gnueabihf/sysroot
  • 1

填上上面这个路径,如下图所示:
在这里插入图片描述
然后是Compiler的选择,就是之前自己添加的C编译器和C++编译器:
在这里插入图片描述
再然后是Debugger的选择,也是我们之前设置的:
在这里插入图片描述
设置Qt version,也是前面我们在设置的Qt的SDK时设置的:
在这里插入图片描述
Qt mkspec不用设置。
在这里插入图片描述
CMake Tool不用设置,因为我们在后面新建工程时会选择使用qmake进行构建项目,所以CMake Tool不用设置。
在这里插入图片描述
以上设置完成后,点击右下方的OK,就行了!

备注:在新建工程时会提示选示哪个构建系统,那时我们选择qmake,如下图所示:
在这里插入图片描述
至此,Qt开发环境QtCreator的安装、配置就完成了。

用实例进行测试

第1个实例链接 http://iyenn.com/rec/1709288.html

工程换位置后一定要更换一下Build directory的位置

详情见 http://iyenn.com/rec/1709289.html

昊虹嵌入式技术交流群
QQ群名片
注:本文转载自blog.csdn.net的昊虹AI笔记的文章"https://blog.csdn.net/wenhao_ir/article/details/145367198"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top