ubuntu搭建qtcreator(含arm qt5.15且下载、安装、配置、示例)

口袋物联 2024-07-16 16:37:03 阅读 75

文章目录

1QtCreator1.1 QtCreator选择1.2 QtCreator安装1.2.1 安装Qt5.15下载安装运行

1.2.2 安装QtCreator下载安装运行Locked

1.3 Qt5.15配置GCC配置G++配置qmake配置Kits配置

2 arm QtCreator配置2.1 交叉编译器和Qt库2.2 Qt5.15配置GCC配置G++配置qmake配置Kits配置

3 示例demo3.1 创建项目3.2 代码实现3.3 编译&运行X86与ARM镜像

参考


1QtCreator

1.1 QtCreator选择

在Qt5.15以前,Qt creator与Qt版本库是打包在一起发布的,比如要开发基于Qt5.14的代码,则从官网下载,安装,然后就可以参考Qt5.14的接口,进行开发。

在这里插入图片描述

但从Qt5.14以后,集成开发环境和Qt版本库是分开的,如下所示,只有源码,没有qt-opensource-xx

在这里插入图片描述

安装Qt,是在安装QtCreator的时候安装的,即一个Qt Creator,可以同时安装多个Qt不同的版本,如想要开发Qt6.2,则选择Qt6.2的库安装,如想要开发Qt5.15,则选择Qt5.15的库安装,Qt官方不会为每一个Qt版本,单独出一个Qt Creator.

所以我们 要想编译Qt5.15,需要通过QtCreator来实现安装。

单独安装QtCreator时有一个问题,QtCreator版本越高,它对编译器gcc的版本也越高,而gcc的版本,又和Ubuntu的版本有关,Ubuntu的版本越高,gcc的版本也会越高(当然也可以自定义),所以一个折中的方法是,QtCreator使用低版本的,如Qt5.14,而通过高版本的QtCreator来安装Qt5.15,使用低版本的QtCreator+Qtx.yy来安装QtCreator。

1.2 QtCreator安装

1.2.1 安装Qt5.15

下载

在这里插入图片描述

安装

1 修改权限

在这里插入图片描述

2 登录,然后《下一步》

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3 默认没有出现我们想要的Qt5.15

在这里插入图片描述

4 更新源,选择Qt5.15

在这里插入图片描述

4 继续下一步,直接安装结束

在这里插入图片描述

在这里插入图片描述

运行

运行报错

WISONIC\80081001@ub16-1001:~$ /opt/Qt/Tools/QtCreator/bin/qtcreator

/opt/Qt/Tools/QtCreator/bin/qtcreator: /lib/x86_64-linux-gnu/libz.so.1: version `ZLIB_1.2.9' not found (required by /opt/Qt/Tools/QtCreator/bin/../lib/Qt/lib/libQt6Gui.so.6)

/opt/Qt/Tools/QtCreator/bin/qtcreator: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by /opt/Qt/Tools/QtCreator/bin/../lib/Qt/lib/libQt6Gui.so.6)

/opt/Qt/Tools/QtCreator/bin/qtcreator: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by /opt/Qt/Tools/QtCreator/bin/../lib/Qt/lib/libQt6Core.so.6)

/opt/Qt/Tools/QtCreator/bin/qtcreator: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by /opt/Qt/Tools/QtCreator/bin/../lib/Qt/lib/libQt6Core.so.6)

/opt/Qt/Tools/QtCreator/bin/qtcreator: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `CXXABI_1.3.11' not found (required by /opt/Qt/Tools/QtCreator/bin/../lib/Qt/lib/libQt6Core.so.6)

1.2.2 安装QtCreator

下载

从官网下载

qt-opensource-linux-x64-5.14.2.run

安装

1 修改权限

2 运行安装(或点击安装),一路next

记住安装目录

运行

运行安装目录下的bin/qtcreator

在这里插入图片描述

Locked

将其lock到侧边栏,方便打开

在这里插入图片描述

1.3 Qt5.15配置

GCC配置

打开Tools–>Options–>Kits–>Compilers,默认应该有GCC,如果没有,则说明系统没有安装gcc,手动安装后,通过Add–>GCC–>C,选择gcc目录添加(一般位于/usr/bin/gcc),并修改名字

G++配置

打开Tools–>Options–>Kits–>Compilers,默认应该有C++,如果没有,则说明系统没有安装g++,手动安装后,通过Add–>GCC–>C++,选择g++目录添加(一般位于/usr/bin/g++),并修改名字

qmake配置

打开Tools–>Options–>Kits–>Qt Versions,默认应该有qmake,如果没有,则说明系统没有检测到,则手动添加,通过Add,在弹出的对话框中,选择Qt5.15目录中的qmake,并修改名字

qtversion

Kits配置

打开Tools–>Options–>Kits–>Kits–>Manual–>Add,在弹出的对话框中,依次修改Name(名称)、Compiler(C和C++)、Qt Version

在这里插入图片描述

2 arm QtCreator配置

2.1 交叉编译器和Qt库

arm平台与X86平台略有不同,arm平台的编译器中已经包含了Qt库,一般由芯片厂商或第三方(如类似飞凌、米尔等)提供,如在NXP平台上,飞凌提供的

在这里插入图片描述

命令行运行安装,默认安装在/opt目录下(也可以选择其他路径),安装后,如下所示

在这里插入图片描述

sysroots下会有2个目录,aarch64-poky-linux是用在arm平台上的,x86_64-pokysdk-linux是用在x86平台进行交叉编译的

2.2 Qt5.15配置

GCC配置

打开Tools–>Options–>Kits–>Compilers–>Add–>GCC–>C,重新命名,并指定目录2.1中gcc的安装目录(如/opt/fsl-imx-xwayland/4.14-sumo/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gcc)

G++配置

打开Tools–>Options–>Kits–>Compilers–>Add–>GCC–>C++,重新命名,并指定目录2.1中g++的安装目录(如/opt/fsl-imx-xwayland/4.14-sumo/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-g++)

qmake配置

打开Tools–>Options–>Kits–>Qt Versions–>Manual–>Add,在弹出的对话框中,选择目录2.1中安装的qmake(如/opt/fsl-imx-xwayland/4.14-sumo/sysroots/x86_64-pokysdk-linux/usr/bin/qt5/qmake),并修改名字

Kits配置

打开Tools–>Options–>Kits–>Kits–>Manual–>Add在弹出的对话框中,依次修改Name(名称)、Compiler(C和C++)、Qt Version。

这里与X86不同的是,需要设置一下Sysroot,将其指定的交叉编译器(/opt/fsl-imx-xwayland/4.14-sumo/sysroots/aarch64-poky-linux)

在这里插入图片描述

3 示例demo

3.1 创建项目

新建demo,通过File菜单,不过在最后一步,会有一个选择kits的选项,列出了当前设置的所有kits,在此选择默认

在这里插入图片描述

项目创建后,我们点击左边的Projects,在Build &Run下会有kits,此时点击绿色的小加号,也可以增加kits

在这里插入图片描述

3.2 代码实现

编写代码,实现功能,在此我们什么也不做,保持默认

3.3 编译&运行

选择kits,在此我们先选择x86-qt15

在这里插入图片描述

编译运行,点击绿色3角箭头或ctrl+R,会弹出一个MainWindow对话框

在这里插入图片描述

X86与ARM镜像

如上所示,我们选择x86 kits时,点击运行,可以弹出对话框,而点击arm kits时,是不会弹出对话框的,也就是不会运行的,只在将其放到arm平台上才能运行

qt@xboard:~/qt$ file build-untitled-adv_nxp_yocto2_5-Debug/untitled

build-untitled-adv_nxp_yocto2_5-Debug/untitled: ELF 64-bit LSB executable, ARM aarch64, version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.14.0, BuildID[sha1]=118fcafbb11877a4ec43693ec2682a725ca05888, not stripped

qt@xboard:~/qt$ file build-untitled-x86_qt15-Debug/untitled

build-untitled-x86_qt15-Debug/untitled: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=6271f576ccf62099b86b7ab9bc26c85c70d834d0, not stripped

参考

【1】https://blog.csdn.net/ACE_YOUNG/article/details/131196528

【2】https://download.qt.io/archive/qt/5.14/5.14.2/

【3】https://download.qt.io/archive/online_installers/

【4】https://download.qt.io/archive/qtcreator/



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。