0%
Skip to content

QT Linux环境搭建

  • vscode (windows上)
  • ubuntu
  • ssh+图传

以上环境已设置完毕,具体参考C/环境搭建

安装QT

bash
# 基本安装
sudo apt update
sudo apt install -y cmake qtbase5-dev qt5-qmake qtcreator qtchooser qttools5-dev qttools5-dev-tools
bash
# 验证
cmake --version
qmake --version
bash
# 添加环境变量(.bashrc),注意更新配置
export QTDIR=/usr/lib/x86_64-linux-gnu
export PATH=$QTDIR/qt5/bin:$PATH

案例

CMakeLists.txt

完整如下,一般UI不需要(纯代码开发),可以删除相关内容

cmake
cmake_minimum_required(VERSION 3.14)

# 设置项目名称和语言
project(TcpClient CXX)

# 设置C++标准
set(CMAKE_CXX_STANDARD 17)

# 设置Qt5路径,可以通过qmake --version查看
set(CMAKE_PREFIX_PATH "/usr/lib/x86_64-linux-gnu/qt5")

# 开启自动生成moc,rcc,ui文件
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)

# 搜索Qt5库
find_package(Qt5 COMPONENTS Core Widgets Network REQUIRED)

# 搜索源文件和头文件,UI文件,qrc文件
file(GLOB SRC_FILES "${CMAKE_SOURCE_DIR}/src/*.cpp")
file(GLOB HEADER_FILES "${CMAKE_SOURCE_DIR}/header/*.h")
file(GLOB UI_FILES "${CMAKE_SOURCE_DIR}/src/*.ui")
file(GLOB QRC_FILES "${CMAKE_SOURCE_DIR}/resources/*.qrc")

# 添加可执行文件,注意QT项目这里要把头文件,ui和qrc添加进去
add_executable(TcpClient ${SRC_FILES} ${HEADER_FILES} ${UI_FILES} ${QRC_FILES})

# 设置可执行文件包含的头文件目录
target_include_directories(TcpClient PRIVATE "${CMAKE_SOURCE_DIR}/header")

# 链接Qt5库
target_link_libraries(TcpClient Qt5::Widgets Qt5::Network)

CMakePresets.json

json
{
    "version": 8,
    "configurePresets": [
        {
            "name": "GCC 9.4.0 x86_64-linux-gnu",
            "displayName": "GCC 9.4.0 x86_64-linux-gnu",
            "description": "使用编译器: C = /usr/bin/gcc, CXX = /usr/bin/g++",
            "binaryDir": "${sourceDir}/build/${presetName}",
            "cacheVariables": {
                "CMAKE_INSTALL_PREFIX": "${sourceDir}/build/install/${presetName}",
                "CMAKE_C_COMPILER": "/usr/bin/gcc",
                "CMAKE_CXX_COMPILER": "/usr/bin/g++",
                "CMAKE_BUILD_TYPE": "Debug"
            }
        }
    ]
}

运行

  • cmake toos插件快速运行即可
  • 由于图传,qt效果会展示出来