下载VScode,Cmake,QT,opencv
1.
配置C++需要MinGW,提供有现成的
链接:https://pan.baidu.com/s/1xtpTm1to8AvtTvZZTM_sLA
提取码:j7c6
下载QT和opencv
QT找国内镜像站
清华镜像网站:https://mirrors.tuna.tsinghua.edu.cn/
Opencv在码云上可以快速下载,下载完后随便放在一个盘中
添加
D:\Opencv\opencv-4.4.0\build
D:\Opencv\opencv-4.4.0\build\bin
到环境变量中
Cmake在官网去下载
下载完成后将bin文件路径添加到环境变量中
检测是否成功 打开cmd输入cmake-gui会打开cmake界面
C++配置软件
链接:https://pan.baidu.com/s/1wl796juGpfW2xjljEx4mAQ
提取码:b53p
2.
配置VSCodeC++环境
- 先打开VScode在拓展中搜索C++
- 解压MinGW放到一个没有中文路径下的地方
打开配置软件然后跟着配置
配置好后会生成一个.vscode文件,这个文件是隐藏着的。
至此VScode的C++环境配置完成了
3.
添加Cmake
- 在VScode拓展中搜索cmake下载
配置表格,这是QT和opencv的
cmake_minimum_required(VERSION 3.5)
project(test_cmake 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)
find_package(Qt5 COMPONENTS Widgets REQUIRED)
find_package(OpenCV REQUIRED)
message(STATUS "OpenCV library status:")
message(STATUS "version: ${OpenCV_VERSION}")
message(STATUS "libraries: ${OpenCV_LIBS}")
message(STATUS "include path: ${OpenCV_INCLUDE_DIRS}")
#添加头文件
include_directories(${OpenCV_INCLUDE_DIRS})
if(ANDROID)
add_library(camera_QT SHARED
main.cpp
mainwindow.cpp
mainwindow.h
mainwindow.ui
)
else()
add_executable(camera_QT
main.cpp
mainwindow.cpp
mainwindow.h
mainwindow.ui
)
endif()
target_link_libraries(camera_QT PRIVATE Qt5::Widgets ${OpenCV_LIBS})
需要配置其他的库可以看这个模板
#最小版本号
cmake_minimum_required(VERSION 3.0.0)
#执行文件名
project(new_hello VERSION 0.1.0)
include(CTest)
enable_testing()
set(CPACK_PROJECT_NAME ${PROJECT_NAME})
set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
#将生成的库文件放到指定的位置
set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR})
include(CPack)
#设置头文件的搜索路径
include_directories(./include)
#添加子目录的路径
add_subdirectory(./src)
#生成库文件
add_library(<name> 默认静态库(动态库SHARED)
源码文件)
#使用指定的源文件来生成目标可执行文件
add_executable(new_hello main.cpp) #(名称 源码)
#寻找库文件
file(GLOB libs_path "路径/*.a (*.dll)")
#链接库文件合并
target_link_libraries(new_hello test (libs_path))
注意之后打开C++文件或者python等其他语言文件都会直接从Cmake中进行环境配置不会VScode的json文件配置的环境会出现一些错误,如果不需要可以选择在此文件夹下禁用