#更新软件源
sudo apt update
# 安装基础编译工具
sudo apt install build-essential perl python git
# 安装 Qt 5.12 编译所需依赖库
sudo apt install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev \
libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev \
libfontconfig1-dev libfreetype6-dev libpng-dev libjpeg-dev \
libsqlite3-dev libssl-dev libicu-dev libpcre2-dev \
libz-dev libbz2-dev libglib2.0-dev libdbus-1-dev
# 安装 OpenGL 支持(如果是物理机)
sudo apt install mesa-common-dev
# 如果是虚拟机或无 OpenGL 硬件的环境,需使用软件渲染
sudo apt install libgl1-mesa-dev libglu1-mesa-dev
mkdir ~/qt5.12-build && cd ~/qt5.12-build
# 下载源码包(以 Qt 5.12.12 为例)
wget https://download.qt.io/archive/qt/5.12/5.12.12/single/qt-everywhere-src-5.12.12.tar.xz
# 解压源码
tar -xvf qt-everywhere-src-5.12.12.tar.xz
cd qt-everywhere-src-5.12.12
../configure -prefix /opt/qt5.12 -opensource -confirm-license -nomake examples -nomake tests -qt-zlib -qt-libpng -qt-libjpeg -qt-xcb -opengl desktop -skip qtvirtualkeyboard
make(此过程耗时比较长,请耐心等待)
make install
#假设安装好了
#设置QT环境变量:
echo 'export PATH="/opt/qt5.12/bin:$PATH"' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH="/opt/qt5.12/lib:$LD_LIBRARY_PATH"' >> ~/.bashrcsource source ~/.bashrc
#确定QT是否已经安装好,如果qmake的输出和下面一样,代表QT安装好了
#用QT写一个小程序(基于QML)
新建一个文件,名为main.qml, 内容如下:
import QtQuick 2.12
import QtQuick.Controls 2.12
ApplicationWindow {
visible: true
width: 640
height: 480
title: "Hello QML"
Rectangle {
width: 640
height: 480
Text {
anchors.centerIn: parent
text: "Hello, QML!"
font.pixelSize: 30
}
}
}
#新建一个C++文件,用来打开main.qml, 内容如下:
#include <QGuiApplication>
#include <QQmlApplicationEngine>
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("file:/root/share/qt_demo/main.qml"))); //改成你的实际路径
return app.exec();
}
#新建一个工程文件main.pro,内容如下:
QT += core gui widgets qml
SOURCES += main.cpp
qmake main.pro
make
输出如下所示:
./main
显示如下图形:
至此,QT开发环境就已经搭建好了!