> 개발 도구 > VSCode > VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

青灯夜游
풀어 주다: 2021-06-23 11:28:57
앞으로
21081명이 탐색했습니다.

Qt는 Qt Company에서 개발한 크로스 플랫폼 C++ 그래픽 사용자 인터페이스 애플리케이션 개발 프레임워크입니다. 이 기사에서는 Qt의 bin 디렉터리를 환경 변수에 추가하고, VSCode 확장 프로그램을 설치하고, Qt 개발을 위해 VS Code를 사용하는 방법을 소개합니다. 프로젝트를 빌드하고 실행합니다.

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

【추천 학습: "VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명 tutorial"】

Qt Creator 인터페이스는 아름답지 않지만 VS Code는 더 아름답습니다.

Qt5는 CMake를 사용한 빌드를 지원하고 VS Code도 CMake 빌드 시스템을 지원할 수 있으므로 완전히 가능합니다.

테스트 환경

  • Qt 5.15.0
  • CMake 3.17.5
  • Visual Studio 2019 16.7.5(C++를 사용한 데스크톱 개발)
  • Visual Studio Code 1.49.3

단계

1. 환경 변수

에 Qt의 bin 디렉터리를 추가합니다. Qt가 C:Qt에 설치되어 있다고 가정하고 환경 변수에 C:Qt5.15.0msvc2019_64bin을 추가합니다. C:Qt,那么将C:Qt5.15.0msvc2019_64bin添加到环境变量。

2. 安装VS Code扩展

在扩展商店搜索VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명,安装微软发行的C/C++扩展。

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

在扩展商店搜索VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명,安装前两个扩展,分别为CMake、CMake Tools。

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

3. 使用Qt Creator创建CMake项目

使用Qt Creator创建一个测试项目,如图所示:

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

4. 在VS Code中打开项目

用VS Code打开CMakeLists.txt文件所在目录,如图所示:

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

需要选择一个kit,我是用的是VS 2019的工具包,也可以使用MinGW,具体请参考CMake扩展的官方文档。

提示是否配置智能感知,选择是。

5. 构建并运行项目

F7进行构建:

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

Shift + F5运行:

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

7. 调试项目

添加断点,按下Ctrl + F5进行调试:

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

一些小问题

测试后发现如果使用MinGW构建则不会出现下面的问题,而使用Visual C++构建则会出现。

上述所有步骤完成后,已经可以正常编码和运行,但智能感知有一点问题,如图:

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

原因在于Qt生成的ui文件没有被包含到智能感知的include目录中。

查询了CMake文档后发现ui文件所在目录会被添加到目标属性的include目录属性中:

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명

但实际验证发现并没有,所以我们还需要手动添加这个属性。

假设生成的目标为Test,在CMakeLists.txt文件的最后一行添加:

target_include_directories(Test PRIVATE "${CMAKE_BINARY_DIR}/Test_autogen/include_Debug")
로그인 후 복사

最终的CMakeLists.txt

2. VS Code 확장 설치

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명확장 스토어에서 VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명를 검색하여 Microsoft에서 제공하는 C/C++ 확장을 설치합니다.

VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명확장 프로그램에서 VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명 검색 store , 처음 두 개의 확장 프로그램, 즉 CMake 및 CMake 도구를 설치합니다.

🎜VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명🎜🎜🎜3. CMake 프로젝트 🎜🎜🎜그림과 같이 Qt Creator를 사용하여 테스트 프로젝트를 만듭니다. 🎜🎜🎜🎜🎜4. VS Code에서 프로젝트를 엽니다🎜🎜🎜다음과 같이 VS Code를 사용하여 CMakeLists.txt 파일이 있는 디렉터리를 엽니다. 그림: 🎜🎜VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명🎜🎜다음을 선택해야 합니다. kit, 저는 VS 2019의 툴킷을 사용합니다. MinGW도 사용할 수 있습니다. 자세한 내용은 CMake 확장의 공식 문서를 참조하세요. 🎜🎜Intelligent Sense를 구성할지 묻는 메시지가 나타나면 예를 선택하세요. 🎜🎜🎜5. 프로젝트 빌드 및 실행 🎜🎜🎜 F7을 눌러 빌드하세요. 🎜🎜VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명🎜🎜 Shift + F5를 눌러 다음을 실행하세요. 🎜🎜VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명🎜🎜🎜7. 프로젝트 디버깅 🎜🎜🎜중단점 추가, Ctrl + F5를 눌러 디버깅: 🎜 🎜 VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명🎜🎜🎜몇 가지 사소한 문제🎜🎜🎜🎜이후 테스트 MinGW를 사용하여 빌드하면 아래와 같은 문제가 발생하지 않지만, Visual C++를 사용하여 빌드하면 발생하는 것으로 나타났습니다. 🎜🎜위의 모든 단계가 완료되면 인코딩하여 정상적으로 실행할 수 있지만, 그림과 같이 지능 센싱에 약간의 문제가 있습니다. 🎜🎜VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명🎜🎜이유는 Qt에서 생성한 ui 파일이 include 디렉터리에 포함되어 있지 않기 때문입니다. IntelliSense의 🎜🎜CMake 문서를 쿼리한 후 ui 파일이 있는 디렉토리가 대상 속성의 포함 디렉토리 속성에 추가된다는 것을 발견했습니다: 🎜🎜VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명🎜🎜하지만 실제 검증에서는 그렇지 않은 것으로 확인되었으므로 이 속성을 수동으로 추가해야 합니다. 🎜🎜생성된 대상이 Test라고 가정하고 CMakeLists.txt 파일의 마지막 줄에 다음을 추가합니다. 🎜
VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명_minimum_required(VERSION 3.5)

project(Test LANGUAGES CXX)

set(CMAKE_INCLUDE_CURRENT_DIR ON)

set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

# QtCreator supports the following variables for Android, which are identical to qmake Android variables.
# Check http://doc.qt.io/qt-5/deployment-android.html for more information.
# They need to be set before the find_package(Qt5 ...) call.

#if(ANDROID)
#    set(ANDROID_PACKAGE_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/android")
#    if (ANDROID_ABI STREQUAL "armeabi-v7a")
#        set(ANDROID_EXTRA_LIBS
#            ${CMAKE_CURRENT_SOURCE_DIR}/path/to/libcrypto.so
#            ${CMAKE_CURRENT_SOURCE_DIR}/path/to/libssl.so)
#    endif()
#endif()

find_package(QT NAMES Qt6 Qt5 COMPONENTS Widgets REQUIRED)
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Widgets REQUIRED)

if(ANDROID)
  add_library(Test SHARED
    main.cpp
    mainwindow.cpp
    mainwindow.h
    mainwindow.ui
  )
else()
  add_executable(Test
    main.cpp
    mainwindow.cpp
    mainwindow.h
    mainwindow.ui
  )
endif()

target_link_libraries(Test PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)

target_include_directories(Test PRIVATE "${CMAKE_BINARY_DIR}/Test_autogen/include_Debug")
로그인 후 복사
🎜최종 CMakeLists.txt 파일 콘텐츠 제대로 작동: 🎜rrreee🎜 IntelliSense: 🎜🎜🎜🎜🎜 더 많은 프로그래밍 관련 지식을 보려면 다음을 방문하세요: 🎜프로그래밍 시작하기🎜! ! 🎜

위 내용은 VSCode를 구성하고 Qt를 개발하는 방법에 대한 간략한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿