背景
- ubuntu 24 LTS
cmake 初始化脚本
bash
sudo apt update
sudo apt install -y \
python3 \
python3-dev \
python3-pip \
python-is-python3 \
python3-venv
sudo apt install python3-pip
sudo apt install pipx
pipx install cmake-init
pipx ensurepath
source ~/.bashrc
cmake-init --help
css
cmake -S . -B build
cmake --build build
qt6 系统安装
vcpkg window下方便一点,Conan 安装qt6有点坑,就用了系统安装的
ubuntu 24 安装的qt为6.4版本的
csharp
sudo apt install qt6-base-dev qt6-tools-dev qt6-l10n-tools libgl1-mesa-dev libglu1-mesa-dev qt6-qpa-plugins mesa-utils libgl1-mesa-dri
CMakeLists.txt
cmake-init 初始化之后,使用nvim 打开,然后先添加依赖
project 之后
scss
# ===============================
# ✅ Qt6 配置(加在这里)
# ===============================
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
find_package(Qt6 REQUIRED COMPONENTS Widgets)
# ===============================
结尾
scss
target_link_libraries(myqtapp_exe PRIVATE Qt6::Widgets)
nvim qt6没提示的解决
.clangd
bash
CompileFlags:
Add:
- "-I/usr/include/x86_64-linux-gnu/qt6"
- "-I/usr/include/x86_64-linux-gnu/qt6/QtWidgets"
- "-I/usr/include/x86_64-linux-gnu/qt6/QtCore"
- "-I/usr/include/x86_64-linux-gnu/qt6/QtGui"
CompilationDatabase: build/dev
效果图
成品的效果图1

调试的效果图

远程vnc
上面的如果直接运行,ubuntu是没有界面的,无法显示,x11只能通过电脑,手机考虑vnc
安装系统命令
vbscript
sudo apt install tigervnc-standalone-server
sudo apt install openbox
~/.vnc/xstartup
bash
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
# 启动一个简单的终端(如果你需要的话,不需要可以删掉这行)
# 保持进程运行,防止 VNC 闪退
exec /usr/bin/openbox-session
perl
vncserver :1 -geometry 1920x1080 -depth 24 -localhost no
vncserver -kill :1
ss -lntp | grep 5901
sudo ufw status
sudo ufw allow 5901
云主机添加规则,ubuntu内检查系统防火墙
外部测试连接
yaml
telnet xxxx 5901
~/.bashrc 最后添加
ini
export DISPLAY=:1
export QT_QPA_PLATFORM=xcb
source ~/.bashrc
运行后的效果图
www.realvnc.com/en/connect/...
安卓谷歌play 下载


