最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

VSCode+Qt+CMake詳細(xì)教程

 更新時間:2025年08月25日 09:52:06   作者:譜寫秋天  
本文詳解如何在VSCode中搭建Qt與CMake開發(fā)環(huán)境,涵蓋安裝步驟、配置Qt路徑、編寫CMakeLists.txt及項(xiàng)目構(gòu)建運(yùn)行流程,強(qiáng)調(diào)擴(kuò)展工具鏈的使用,助力實(shí)現(xiàn)高效跨平臺Qt C++開發(fā),本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧

第一部分:環(huán)境準(zhǔn)備與安裝

1. 安裝 VSCode

  1. 訪問 VSCode 官網(wǎng) 下載并安裝。
  2. 安裝完成后,打開 VSCode,安裝以下必備擴(kuò)展:
    • C/C++ (Microsoft): 提供 C/C++ 語言的 IntelliSense、調(diào)試等功能。
    • CMake (Microsoft): 提供 CMake 項(xiàng)目的構(gòu)建、調(diào)試、配置支持。
    • CMake Tools (Microsoft): CMake 擴(kuò)展的增強(qiáng)工具,是核心。
    • (可選) Qt Configure (TheQtCompany): 幫助配置 Qt 環(huán)境,提供 .ui 文件預(yù)覽等功能。
    • (可選) Qt Tools (TheQtCompany): 提供 Qt 特有的語法高亮等。

2. 安裝 Qt

  1. 訪問 Qt 官網(wǎng) 下載 Qt Online Installer。
  2. 運(yùn)行安裝程序,登錄或注冊 Qt 賬戶。
  3. 在選擇組件頁面,至關(guān)重要的一步:
    • 選擇最新的 Qt 版本 (如 Qt 6.7.0)。
    • 展開該版本,勾選以下組件:
      • MSVC 2019 64-bit (如果你在 Windows 上使用 Visual Studio 的編譯器)
      • MinGW 11.2.0 64-bit (如果你使用 MinGW 編譯器)
      • Android, iOS, macOS 等 (根據(jù)你的目標(biāo)平臺選擇)。
    • 務(wù)必勾選 SourcesDebugging Tools for Windows (Windows MSVC 下),這對調(diào)試非常有幫助。
    • 勾選 Qt Creator(雖然我們用 VSCode,但 Qt Creator 自帶了許多有用的工具,如 qmake, uic, moc 等,這些工具在構(gòu)建時是必需的)。
    建議: 如果你使用 MSVC,請確保系統(tǒng)已安裝對應(yīng)版本的 Visual Studio Build ToolsVisual Studio。

3. 安裝 CMake

  1. 訪問 CMake 官網(wǎng) 下載安裝包。
  2. 安裝時,務(wù)必勾選 “Add CMake to the system PATH for all users”,這樣 VSCode 和終端才能找到它。
  3. 安裝完成后,打開終端 (CMD/PowerShell),輸入 cmake --version 驗(yàn)證是否安裝成功。

4. 安裝編譯器 (如果未安裝)

  • Windows (MSVC): 安裝 Visual Studio 并勾選 “C++ 桌面開發(fā)” 工作負(fù)載。
  • Windows (MinGW): 可以單獨(dú)安裝 MinGW-w64,但更簡單的方法是如上所述,在安裝 Qt 時直接勾選 MinGW 組件。
  • Linux: 通常系統(tǒng)自帶 GCC/G++,可通過包管理器安裝 (sudo apt install build-essential on Ubuntu)。
  • macOS: 安裝 Xcode Command Line Tools (xcode-select --install)。

第二部分:配置 VSCode 環(huán)境

1. 配置 Qt 路徑

VSCode 需要知道 Qt 的安裝位置,以便 CMake Tools 擴(kuò)展能找到 Qt 的庫和工具。

  1. 打開 VSCode 的設(shè)置 (Ctrl+,)。
  2. 搜索 cmake kit。
  3. 找到 Cmake: Kits 設(shè)置,點(diǎn)擊 “在 settings.json 中編輯”
  4. 這會打開 settings.json 文件。我們需要添加一個 “Kit”

示例配置 (請根據(jù)你的實(shí)際路徑修改):

{
    "cmake.configureOnOpen": false, // 可選:建議關(guān)閉,手動配置
    "cmake.generator": "Ninja",     // 可選:推薦使用更快的 Ninja 代替 NMake
    "cmake.kits": [
        {
            "name": "Qt-6.7.0-MSVC2019_64",
            "compilers": {
                "C": "C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe",
                "CXX": "C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe"
            },
            "environmentVariables": {
                // 將 Qt 的 bin 目錄和編譯器的目錄添加到 PATH
                "PATH": "C:/Qt/6.7.0/msvc2019_64/bin;C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64;${env:PATH}"
            },
            "qtDir": "C:/Qt/6.7.0/msvc2019_64" // 最關(guān)鍵的一行,指向你的 Qt 安裝目錄
        }
    ]
}
  • name: 給你的配置起一個易懂的名字。
  • compilers: 指定 C 和 C++ 編譯器的完整路徑。
  • environmentVariables: 設(shè)置臨時的 PATH 環(huán)境變量,確保構(gòu)建時能找到 moc, uic, rcc 等 Qt 工具以及編譯器。
  • qtDir: CMake Tools 擴(kuò)展用這個變量來查找 Qt。

更簡單的方法:
很多時候,CMake Tools 會自動掃描系統(tǒng)并生成 Kits。安裝完上述軟件后,重啟 VSCode,點(diǎn)擊底部狀態(tài)欄的 “No Kit Selected” 或已選擇的 Kit 名稱,可能會自動彈出檢測到的 Kits 列表(包括上面配置的),直接選擇即可。

第三部分:創(chuàng)建并配置一個 CMake Qt 項(xiàng)目

1. 項(xiàng)目結(jié)構(gòu)

創(chuàng)建一個新的項(xiàng)目文件夾,結(jié)構(gòu)如下:

my_qt_app/
├── CMakeLists.txt
├── main.cpp
├── MainWindow.cpp
├── MainWindow.h
├── MainWindow.ui (可選,UI文件)
└── resources.qrc (可選,資源文件)

2. 編寫 CMakeLists.txt

這是 CMake 構(gòu)建系統(tǒng)的核心配置文件。

# 指定 CMake 的最低版本要求。Qt6 推薦使用 3.16 或更高版本。
cmake_minimum_required(VERSION 3.16)
# 設(shè)置項(xiàng)目名稱和版本
project(MyQtApp VERSION 1.0.0 LANGUAGES CXX)
# 設(shè)置 C++ 標(biāo)準(zhǔn)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# 自動調(diào)用 MOC、UIC、RCC
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)
# 查找所需的 Qt 組件
# 這里的 Core Gui Widgets 是你的項(xiàng)目所依賴的 Qt 模塊
find_package(Qt6 REQUIRED COMPONENTS Core Gui Widgets)
# 如果你的 Qt 安裝在非標(biāo)準(zhǔn)路徑,可能需要手動設(shè)置 Qt6_DIR
# set(Qt6_DIR "C:/Qt/6.7.0/msvc2019_64/lib/cmake/Qt6")
# 添加可執(zhí)行文件目標(biāo)
add_executable(${PROJECT_NAME}
    main.cpp
    MainWindow.h
    MainWindow.cpp
    # MainWindow.ui  # 如果啟用了 AUTOUIC,通常不需要直接添加 .ui 文件
    # resources.qrc  # 如果啟用了 AUTORCC,通常不需要直接添加 .qrc 文件
)
# 將找到的 Qt 庫鏈接到你的可執(zhí)行文件
target_link_libraries(${PROJECT_NAME} PRIVATE
    Qt6::Core
    Qt6::Gui
    Qt6::Widgets
)
# 在 Windows 上,如果是 GUI 應(yīng)用程序(非控制臺),添加以下代碼
if (WIN32)
    win32_gui_executable(${PROJECT_NAME})
endif()

3. 編寫簡單的源代碼

main.cpp

#include <QApplication>
#include "MainWindow.h"
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    return a.exec();
}

MainWindow.h

#pragma once
#include <QMainWindow>
class MainWindow : public QMainWindow
{
    Q_OBJECT // 必須的宏,用于支持 Qt 的信號/槽機(jī)制
public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
};

MainWindow.cpp

#include "MainWindow.h"
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    // 設(shè)置窗口標(biāo)題和大小
    setWindowTitle("My First Qt App in VSCode");
    resize(800, 600);
}
MainWindow::~MainWindow() {}

第四部分:在 VSCode 中構(gòu)建和運(yùn)行

  1. 打開項(xiàng)目文件夾: 用 VSCode 打開 my_qt_app 文件夾。
  2. 選擇 Kit: 點(diǎn)擊底部狀態(tài)欄的 “No Kit Selected”,從列表中選擇你之前配置好的 Kit (如 Qt-6.7.0-MSVC2019_64)。
  3. 選擇 Variant (構(gòu)建類型): 點(diǎn)擊底部狀態(tài)欄的 “[Debug]”,可以選擇 Debug, Release, RelWithDebInfo等。
  4. 配置項(xiàng)目 (Configure):
    • 按下 Ctrl+Shift+P 打開命令面板。
    • 輸入 CMake: Configure 并執(zhí)行?;蛘唿c(diǎn)擊底部狀態(tài)欄的 “Configure” 按鈕。
    • 這會讓 CMake 讀取你的 CMakeLists.txt,檢查依賴,并在項(xiàng)目根目錄生成一個 build 文件夾(默認(rèn))和 CMakeCache.txt。
  5. 構(gòu)建項(xiàng)目 (Build):
    • 按下 Ctrl+Shift+P,輸入 CMake: Build 并執(zhí)行?;蛘唿c(diǎn)擊底部狀態(tài)欄的 “Build” 按鈕 (一個小齒輪)。
    • 編譯輸出會顯示在終端中。成功后,可在 build/Debugbuild/Release 文件夾中找到生成的 .exe 文件。
  6. 運(yùn)行項(xiàng)目 (Run):
    • 按下 Ctrl+Shift+P,輸入 CMake: Run Without Debugging?;蛘唿c(diǎn)擊底部狀態(tài)欄的 “Play” 按鈕。
    • 你的 Qt 應(yīng)用程序就會啟動!
  7. 調(diào)試 (Debug):
    • 首先在代碼中設(shè)置斷點(diǎn) (點(diǎn)擊行號左側(cè))。
    • 然后點(diǎn)擊底部狀態(tài)欄的 “Debug” 按鈕 (一個帶蟲子的播放按鈕) 或按 F5。
    • VSCode 會啟動程序并在斷點(diǎn)處暫停,你可以查看變量、調(diào)用堆棧等信息。

第五部分:常見問題與技巧 (FAQ)

  • CMake 找不到 Qt?
    • 檢查 settings.json 中的 qtDir 路徑是否正確。
    • 嘗試在 CMakeLists.txt 中手動設(shè)置 set(Qt6_DIR “你的Qt安裝路徑/lib/cmake/Qt6”)。
  • 構(gòu)建失敗,提示找不到 moc_MainWindow.cpp 之類的文件?
    • 確保 CMakeLists.txt 中設(shè)置了 set(CMAKE_AUTOMOC ON)。
    • 確保你的頭文件包含了 Q_OBJECT 宏。
    • 嘗試執(zhí)行 CMake: Delete Cache and Reconfigure 命令,然后重新構(gòu)建。
  • 如何添加 .ui 文件或 .qrc 文件?
    • .ui 文件放在源碼目錄。
    • CMakeLists.txtadd_executable 命令中不需要直接添加 .ui 文件。AUTOUIC 會自動處理。
    • 確保 .ui 文件對應(yīng)的頭文件(如 MainWindow.h)中包含了使用 ui->setupUi(this); 的代碼。.qrc 資源文件同理。
  • 如何清理構(gòu)建?
    • 直接刪除項(xiàng)目根目錄下的 build 文件夾,然后重新 ConfigureBuild。

總結(jié)

VSCode + Qt + CMake 的組合提供了高度可定制化和現(xiàn)代化的開發(fā)體驗(yàn)。雖然初始配置比 Qt Creator 稍顯復(fù)雜,但它提供了無與倫比的編輯器體驗(yàn)、強(qiáng)大的擴(kuò)展生態(tài)系統(tǒng)和對構(gòu)建流程的更深層次控制。一旦配置完成,其流暢的開發(fā)體驗(yàn)會讓你覺得物有所值。

這套組合是當(dāng)前 Qt C++ 開發(fā)的主流選擇之一,它結(jié)合了:

  • VSCode: 輕量級、插件豐富、生態(tài)強(qiáng)大的代碼編輯器。
  • Qt: 強(qiáng)大的跨平臺應(yīng)用開發(fā)框架。
  • CMake: 跨平臺的自動化構(gòu)建系統(tǒng),能生成用于編譯的 Makefile 或項(xiàng)目文件。

到此這篇關(guān)于VSCode+Qt+CMake詳細(xì)地講解的文章就介紹到這了,更多相關(guān)VSCode Qt CMake內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C++運(yùn)算符重載的方法詳細(xì)解析

    C++運(yùn)算符重載的方法詳細(xì)解析

    運(yùn)算符重載的方法是定義一個重載運(yùn)算符的函數(shù),在需要執(zhí)行被重載的運(yùn)算符時,系統(tǒng)就自動調(diào)用該函數(shù),以實(shí)現(xiàn)相應(yīng)的運(yùn)算。也就是說,運(yùn)算符重載是通過定義函數(shù)實(shí)現(xiàn)的
    2013-10-10
  • C語言求向量和的兩則問題解答分享

    C語言求向量和的兩則問題解答分享

    這篇文章主要介紹了C語言求向量和的兩則問題解答分享,分別是求連續(xù)子向量的最大和和任何連續(xù)最接近0的子向量的和的問題,需要的朋友可以參考下
    2016-04-04
  • C語言?模擬實(shí)現(xiàn)memcpy與memmove函數(shù)詳解

    C語言?模擬實(shí)現(xiàn)memcpy與memmove函數(shù)詳解

    這篇文章主要介紹了C語言詳解如何模擬內(nèi)存函數(shù),用到了mencpy與memmove兩個函數(shù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-04-04
  • C++實(shí)現(xiàn)PyMysql的基本功能實(shí)例詳解

    C++實(shí)現(xiàn)PyMysql的基本功能實(shí)例詳解

    這篇文章主要介紹了C++實(shí)現(xiàn)PyMysql的基本功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的工作或?qū)W習(xí)有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • C語言報(bào)錯:Undefined Reference的產(chǎn)生原因和解決方案

    C語言報(bào)錯:Undefined Reference的產(chǎn)生原因和解決方案

    Undefined Reference(未定義引用)是C語言編譯過程中常見的錯誤之一,通常在鏈接階段出現(xiàn),本文將詳細(xì)介紹Undefined Reference的產(chǎn)生原因,提供多種解決方案,并通過實(shí)例代碼演示如何有效避免和解決此類錯誤,需要的朋友可以參考下
    2024-06-06
  • 詳解Matlab中自帶的Java操作合集

    詳解Matlab中自帶的Java操作合集

    其實(shí)Matlab中也有一些自帶的Java操作,例如:獲取鼠標(biāo)在全屏位置、獲取當(dāng)前剪切板內(nèi)容、獲取鼠標(biāo)處像素顏色等,本文總結(jié)了七個這樣的操作,感興趣的可以了解一下
    2022-03-03
  • 利用C++實(shí)現(xiàn)簡易的狼人殺游戲

    利用C++實(shí)現(xiàn)簡易的狼人殺游戲

    狼人殺游戲是一款非常有趣的角色扮演游戲,它需要玩家之間互相猜測身份并進(jìn)行投票,通過推理來找出真正的狼人。本文將用C++實(shí)現(xiàn)這一游戲,感興趣的可以了解一下
    2023-04-04
  • C++使用map實(shí)現(xiàn)多進(jìn)程拷貝文件的程序思路

    C++使用map實(shí)現(xiàn)多進(jìn)程拷貝文件的程序思路

    這篇文章主要介紹了C++使用mmap實(shí)現(xiàn)多進(jìn)程拷貝文件,通過本文給大家分享程序思路及完整代碼,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • c語言之如何求e的近似值

    c語言之如何求e的近似值

    這篇文章主要介紹了c語言之如何求e的近似值問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 基于VS+Opencv2.4.10微信跳一跳輔助工具

    基于VS+Opencv2.4.10微信跳一跳輔助工具

    這篇文章主要為大家詳細(xì)介紹了基于VS+Opencv2.4.10微信跳一跳輔助工具,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01

最新評論

宜章县| 驻马店市| 夏河县| 浦东新区| 博湖县| 庆阳市| 奉化市| 张家口市| 承德市| 元氏县| 临武县| 兴国县| 廊坊市| 滦南县| 永川市| 衡阳市| 沈丘县| 锡林浩特市| 曲沃县| 南涧| 越西县| 庆云县| 阜康市| 桐庐县| 天峻县| 涪陵区| 竹北市| 马山县| 敖汉旗| 玉山县| 武穴市| 黄骅市| 铁岭县| 汶上县| 天门市| 弥渡县| 苍南县| 白朗县| 山东| 哈尔滨市| 含山县|