提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
简介
环境如下:
OS: Ubuntu 20.04.6 LTS
QT:5.15.8
VSCode: 1.92
一、安装QT5.15.8
从源码编译 Qt 5.15
1.安装必要的依赖包:
打开终端并运行以下命令以安装编译 Qt 所需的依赖:
sudo apt update
sudo apt install build-essential libgl1-mesa-dev libglib2.0-dev libssl-dev
libssl-dev 提供了 OpenSSL 头文件和库,
-I 和 -L 标志用于指定头文件和库的路径,通常这些路径是
/usr/include/openssl 和 /usr/lib。
2.下载 Qt 5.15 源码:
从 Qt 官方下载页面 选择 Qt 5.15 的源码包。或者使用以下命令下载(根据实际情况替换版本号和文件名):
wget https://download.qt.io/archive/qt/5.15/5.15.8/single/qt-everywhere-src-5.15.8.tar.xz
3.解压源码包:
tar -xvf qt-everywhere-src-5.15.8.tar.xz
4.创建构建目录并进入该目录:
mkdir qt-build
cd qt-build
5.配置 Qt 构建:
运行 …/qt-everywhere-src-5.15.8/configure 进行配置。您可以根据需要添加配置选项。一个基本的配置命令如下:
./qt-everywhere-src-5.15.8/configure -prefix /opt/qt5.15-opensource -confirm-license
本项目需要在编译 Qt 时启用 SSL,因此使用以下配置命令
./qt-everywhere-src-5.15.8/configure -prefix /opt/qt5.15-opensource -confirm-license -openssl-linked -I/usr/include/openssl -L/usr/lib
6.编译 Qt:
make -j$(nproc)
$(nproc) 会自动检测系统的 CPU 核心数,从而加速编译过程。
7.安装 Qt:
sudo make install
检查系统上 OpenSSL 的版本:
安装好了之后可以 检查 OpenSSL 库版本有时,即使系统安装了 OpenSSL,Qt 也可能链接到错误的库。你可以检查 OpenSSL 库的版本,确保它与 Qt 兼容。
openssl version
如果版本过旧或有问题,尝试更新到更高版本。
检查是否启用了 Qt 的 OpenSSL 支持
有时,尽管系统上安装了 OpenSSL,Qt 并没有正确链接到 OpenSSL。这可能是因为 Qt 安装时没有使用 OpenSSL 或使用了错误版本的 OpenSSL。
你可以使用 qmake 来查看 Qt 是否启用了 SSL 支持:
qmake -query
输出中你应该看到与 SSL 相关的设置,例如:
QT_SSL_LIBS:-lssl -lcrypto
如果没有看到这些信息,说明 Qt 没有正确链接到 SSL 库。
8.设置环境变量:
编辑 ~/.bash_profile 文件
nano ~/.bashrc
添加以下内容
export QTDIR=/opt/qt5.15export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
保存文件并退出 nano 编辑器:
按 Ctrl + X 退出。
按 Y 确认保存更改。
按 Enter 确认文件名
然后重新加载配置文件:
source ~/.bashrc
8.验证安装:
无论使用哪种方法安装 Qt 5.15,您都可以通过以下命令验证安装是否成功:
qmake -v
预期输出应显示 Qt 5.15.x 的版本信息:
QMake version 3.x
Using Qt version 5.15.x in /path/to/qt
二、安装VSCode
1.通过下载包安装VSCode(Visual Studio Code)
1.访问VSCode官网
首先,打开Ubuntu的浏览器,访问VSCode的官方网站(https://code.visualstudio.com/)。在官网首页,你可以找到“Download”按钮,点击它进入下载页面。
2.选择安装包
在下载页面,你需要选择适合Ubuntu的安装包。对于大多数Ubuntu用户,应该选择.deb格式的安装包,因为它与Debian及其衍生系统(如Ubuntu)兼容。VSCode1.92不兼容Ubuntu20以前的版本。
3.下载安装包
点击.deb安装包的下载链接,浏览器会开始下载该安装包。你可以选择将安装包保存到任何你容易找到的位置,比如“下载”文件夹。
4.打开终端并安装
打开终端:在Ubuntu中,你可以通过快捷键Ctrl+Alt+T打开终端。
导航到安装包所在目录:使用cd命令进入包含VSCode安装包的文件夹。例如,如果你的安装包在“下载”文件夹中,你可以输入cd ~/Downloads来进入该文件夹。
安装VSCode:使用dpkg命令来安装VSCode。你需要使用sudo来获取必要的权限。命令如下:下载安装包
sudo dpkg -i code_版本号-amd64.deb
请将版本号替换为你下载的VSCode安装包的实际版本号。
注意:在安装过程中,如果dpkg报告缺少依赖项,你可以使用sudo apt-get install -f命令来安装这些依赖项,并再次尝试安装VSCode。
4.验证安装
安装完成后,你可以通过在终端中输入code命令来启动VSCode,以验证它是否已成功安装。如果VSCode成功启动,那么安装就是成功的。
5.安装 VSCode 插件
1.C/C++ 插件:这是 Microsoft 官方的 C/C++ 插件,用于提供 C/C++ 的智能感知、调试等功能。
2.Qt for Visual Studio Code:这个插件(或类似的,如 Qt VS Tools,但请注意,Qt VS Tools 是针对 Visual Studio 的)可以帮助你更方便地在 VSCode 中管理 Qt 项目。不过,需要注意的是,截至当前时间,VSCode 的 Qt 支持可能不如 Qt Creator 那么完善。
你可以通过 VSCode 的扩展视图(侧边栏中的方块图标)搜索并安装这些插件。
三、构建和编译
需配置tasks.json,launch.json.setting.json 文件,三个文件的路径,作用见以下。
1.配置任务tasks.json
1.在VSCode中打开你的Qt项目文件夹。
2.按下Ctrl+Shift+P打开命令面板,输入并选择“Tasks: Configure Task”。
3.选择“Create tasks.json file from template” -> “Others”。
在生成的tasks.json文件中,添加两个任务:一个用于运行qmake,另一个用于运行make。
以下是一个tasks.json文件的示例,它包含了qmake和make任务:
{"version":"2.0.0","tasks":[{"label":"qmake","type":"shell","command":"qmake","args":["-o","Makefile","sj_ipc_cms_interface.pro"],"group":{"kind":"build","isDefault":true}},{"label":"make","type":"shell","command":"make","group":{"kind":"build","isDefault":false},"problemMatcher":["$gcc"]},{"label":"clean","type":"shell","command":"make clean","group":"build"}]}
3.配置settings.json
{"terminal.integrated.env.linux":{"PATH":"/opt/qt5.15/bin:${env:PATH}"}}
4.构建项目:
先运行qmake任务来生成Makefile,在运行make生成可执行文件
1.按下Ctrl+Shift+P打开命令面板,输入并选择“Tasks: Run Task”。
2.选择“qmake” ,完成之后,再选择“make”.
生成的可执行文件在项目主目录之下。
5.运行项目:
为了运行你的Qt应用程序,你可能需要配置一个调试或运行任务。
这通常涉及到创建一个.vscode/launch.json文件,并在其中定义如何启动你的应用程序
{"version":"0.2.0","configurations":[{"name":"Launch MyQtProject","type":"cppdbg","request":"launch","program":"${workspaceRoot}/sj_ipc_cms_interface",**//"sj_ipc_cms_interface"需要跟.pro的TARGET 参数设置成一样的直**"args":[],"stopAtEntry":false,"cwd":"${workspaceFolder}","environment":[],"externalConsole":false,"MIMode":"gdb","setupCommands":[{"description":"Enable pretty-printing for gdb","text":"-enable-pretty-printing","ignoreFailures":true}],"preLaunchTask":"qmake","miDebuggerPath":"/usr/bin/gdb","miDebuggerArgs":"","logging":{"trace":true,"traceResponse":true,"engineLogging":true}}]}
launch.json的配置 “program”: “${workspaceRoot}/sj_ipc_cms_interface”, sj_ipc_cms_interface必须跟.pro中的TARGETS设置成一样的值,
运行:
./sj_ipc_cms_interface
5.调试项目:
如果你已经配置了launch.json文件,你可以按下F5来启动调试会话。
确保你的Qt安装路径和环境变量都配置正确,以便VSCode能够找到qmake和make命令。如果你遇到任何问题,检查VSCode的输出或终端面板以获取错误信息。
版权归原作者 zhangruohuanihao 所有, 如有侵权,请联系我们删除。