qt源码编译linux-Linux平台上搭建QT开发环境

下载附件:

用于QT开发和QT应用程序运行的QT库:

在Linux X64平台上运行的Qt Creator开发和应用程序使用的Qt库:

用于运行ARM64平台应用程序的Qt库:

QT库配置说明:

直接下载并使用我提供的编译好的Qt库。 需要正确配置才能正常使用。

可能出现的问题:

问题1:在Ubuntu下将我编译的QT库移至QT Creator时,QT Creator中可能会提示“Qt版本未正确安装,请运行make install”的问题。 提示说明Qt尚未正确安装qt源码编译linux,请运行make install。 这个问题是一个比较常见的问题。

出现这个问题的原因是:Qt安装编译时生成qmake.exe,里面嵌入了一些与Qt相关的路径。 如果直接复制使用的话,自己的路径结构和原来的不一样,无法正常使用Qt库。 提示Qt版本未正确安装,请运行make install Qt未正确安装,请运行make install。

由于qmake.exe中嵌入了路径信息,所以应该无法通过更改配置来解决这个问题。 所以有以下几种方案来解决这个问题:

解决方案一:保持库的安装路径和我编译的一致。 路径为:/usr/local/Qt-5.7.0 【推荐此方案】

具体来说,下载我提供的Linux X64平台的Qt-5.7.0库后,复制到Ubuntu系统中解压,然后将解压后的Qt-5.7.0复制到/usr/local/路径下,并配置环境变量 。

解决方案2:修改qmake.exe中的qt_prfxpath主键。 【不建议】

我们只能从qmake.exe开始。 (修改之前别忘了先做好备份)使用十六进制编译器,打开qmake.exe文件qt源码编译linux,搜索71 74 5f 70 72 66 78 70 61 74 68 3d(qt_prfxpath = ***),我用IDA工具查看我为Linux X64平台编译的Qt-5.7.0库。 结果如下图:

选项2参考

问题2:通过方案1解决问题1后,构建QT项目时仍然可能出现“error:cannotfind-lGL”

原因:依赖库没有安装。

解决方案:重新执行 sudo apt-get install libgl1-mesa-dev 安装一系列依赖库。

最新的新项目需要linux下的QT开发,包括QCamera的使用。

我下载了Qt最新版本的源代码。 同时参考了一些旧资料,回顾了整个安装和使用的过程,包括安装过程中的踩步过程,记录下来,以供以后参考和分享。

1、环境搭建流程

步骤0.开发环境

首先介绍一下我的开发环境:

物理机:windows 10 64位;

虚拟机:Virtualbox 5.20;

虚拟机:Ubuntu 16.04 64位;

步骤1.准备

在Ubuntu系统中,为了保证Qt的正常运行,必须安装一些必要的工具,包括g++编译器,以及一些必要的库。 可以使用以下命令安装它:

须藤 apt-get 安装 g++

sudo apt-get install libx11-dev libxext-dev libxtst-dev12

如果您的 Ubuntu 已经安装了 g++ 和 libX11-dev libXext-dev libXtst-dev,则可以跳过此步骤。

步骤2.下载QT源代码和IDE

前往Qt官网下载相应的源码和文件。 我是2017年2月底下载的,此时Qt Library的版本已经更新到5.8.0,Qt Creator的版本已经更新到2.5.2。 不过鉴于网上一些网友的建议,5.0之后使用Qt库的人还是比较少。 一旦遇到问题,不容易解决,所以建议使用5.0之前的库。 所以,我选择了5.0之前库的最后一个版本,即4.8.6。 至于Qt Library和Qt Creator的具体下载地址如下:

qt库源码包:

qt 创建者:

步骤 3. 编译并安装 Qt 库

下载完Qt Library的源码后,随意解压到一个临时目录,然后单步进入该目录进行配置编译。 具体步骤如下:

1. 解压

tar xvJf qt-everywhere-opensource-src-5.7.0.tar.xz

2. 配置

cd qt-everywhere-opensource-src-5.7.0

。/配置

然后终端会出现让你选择商业版本或者开源版本,输入字母o选择开源版本。 然后会有一个合同让你接受,只要输入yes就可以了。 系统将开始配置整个项目,稍等片刻即可。

3. 编译

配置完成后,终端会提示以下信息:

Qt 现在已配置为构建。 只需运行“make”即可。

一切构建完成后,您必须运行“make install”。

Qt 将安装到 /usr/local/Qt-5.7.0

要重新配置,请运行“make confclean”和“configure”。

此时,按要求输入make,开始编译生成Qt库,同时编译所有demo程序。 这个过程比较长,耐心等待即可。

在我的笔记本电脑上编译大约花费了 1.5 小时。 编译过程中遇到的一些坑,在之前的《踩坑记录》中有详细介绍。

4. 生成

Qt编译完成后,需要输入make install进行安装。 注意make install需要root权限,所以需要sudo。

sudo make install

安装过程相对较快。 安装完成后,首先要进入Qt安装目录,测试Qt是否安装成功。 Qt默认安装在/usr/local/Qt-5.7.0目录下,所以直接找到该目录,输入qmake所在位置。 bin文件夹,然后输入./qmake -v命令,如果出现正确的版本信息,则说明安装成功。

输入./qmake -v命令,如果出现正确的版本信息:

如何移植QT库:

如果要移植编译上面编译生成的QT Library,请将/usr/local/Qt-5.7.0整个目录打成tar包,然后复制到其他Linux上,并配置好环境变量才能使用它。

步骤 4. 安装 IDE:Qt Creator

	相比Qt Library,Qt Creator的安装要简单的多,我们下载的bin文件是可执行文件,安装时会出现像在Windows下的界面,安装路径默认就可以了。使用终端cd到你刚刚存放Qt Creator的临时目录,修改bin文件的权限使其具有可执行的权限:

chmod 777 qt-creator-opensource-linux-x86_64-4.7.0-rc1.run

然后输入以下命令安装bin文件:

./qt-creator-opensource-linux-x86_64-4.7.0-rc1.run

	就会出现仿windows系统的安装界面。如下图所示,一步步按照要求确认就可以完成安装流程了。

步骤5.设置环境变量

最后,设置环境变量。 设置环境变量的目的是为了在任意目录下使用Qt Library。

sudo gedit /etc/profile

然后会弹出一个编辑窗口,在最后添加以下代码:

导出 QTDIR=/usr/local/Qt-5.7.0

导出 PATH=$QTDIR/bin: $PATH

导出 LD_PLUGINS_PATH= $QTDIR/插件: $LD_PLUGINS_PATH

导出 LD_LIBRARY_PATH= $QTDIR/lib: $LD_LIBRARY_PATH

保存后退出。 source /etc/profile生效后,切换到其他路径,运行“qmake -v”。 如果输出QT版本信息,说明配置成功。 如下所示:

重启笔记本后,打开终端,在任意目录下输入qmake。 如果出现正确信息,则说明环境变量配置成功。

步骤 6. 开始体验

启动IDE:

至此,Qt已经安装完毕。 在终端输入Qt Creator命令,或者在dash主页搜索Qt Creator并启动,或者将安装目录bin下的qtcreator链接到Ubuntu桌面,双击图标启动。

最后运行一个demo来测试一下。

查看QT开发环境搭建结果:

QT Library + Qt Creator环境搭建完成后,就可以直接通过IDE开发QT应用程序了。 构建完成后,Qt Creator 中的构建套件具有编译器和 Qt 库版本。 这样才能正常编译。 如下:

演示示例:

基于搭建的环境,开发的Demo程序效果如下:

2、参考文章

Qt for Linux/X11 - 从源代码构建

【QT官方编译源码手册】

Qt 配置选项

3、踩踏记录

问题 1:libxcb 和支持库的链接测试失败!

或者当QT IDE运行困难并提示:此应用程序无法启动,因为它无法找到或加载Qt平台插件“xcb”

问题描述:

检查 xcb-syslibs…没有。

针对 libxcb 和支持库的链接测试失败!

您可能需要安装依赖包,或传递-qt-xcb。

请参阅 src/plugins/platforms/xcb/README。

解决方案:

sudo apt-get 安装 libxcb*

 **参考**

问题2:configure时出现“gstreamer-1.0开发包未找到”和“gstreamer-audio-0.10开发包未找到”

g++ -Wl,-O1 -o alsa alsatest.o -lasound

已启用 alsa。

检查 GStreamer 1.0...

项目错误:找不到 gstreamer-1.0 开发包

GStreamer 1.0 已禁用。

检查 GStreamer 0.10...

项目错误:找不到 gstreamer-audio-0.10 开发包

GStreamer 0.10 已禁用。

完成运行配置测试。

解决方案:

sudo apt-get install gstreamer1.0* 【安装过程中需要安装很多依赖库】

sudo apt-get install libgstreamer-plugins-base1.0-dev

问题3:Make编译时出错,导致编译停止。 具体错误记录如下:

make[2]: *** [sub-quick-make_first] 错误 2

make[1]: *** [子示例-make_first] 错误 2

。 。 。

截图如下:

原因:

之前的configure中找不到GStreamer相关包,导致Qt Multimedia编译失败。

编译时缺少一些库导致整个编译过程失败;

解决过程:

第一步:安装X11相关依赖库

sudo apt-get install libfontconfig1-dev libfreetype6-dev libx11-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libx11-xcb-dev libxcb-glx0-dev

sudo apt-get install libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-ut il0-dev

请参阅 Qt 了解 X11 要求

步骤2:解决问题2中找不到gstreamer-1.0和gstreamer-audio-0.10开发包的问题,​​并确保“GStreamer 1.0已启用”

经过以上2步,make终于成功了。 make成功的结果如下图所示:

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 源码编译 qt源码编译linux-Linux平台上搭建QT开发环境 https://www.wkzy.net/game/185228.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务