windows下vscode使用cmake的方法

 更新时间:2021年3月10日 15:00  点击:2055

说在前头:

  • cmake的作用,是通过你的CMakeLists文件,根据你的工程自动帮你成makefile文件。优点是CMakeLists非常简单好写,makefile写起来则比较复杂。
  • 有了makefile文件,你就只需要使用编译器的make指令,便可以生成最终的可执行文件
  • 不同的编译器,所对应的makefile有差异,如mingw的,visual studio的等等,因此使用cmake前,应指明它的文件生成对象是什么,在vscode里面的用户设置文件里面应写上这么一行:

"cmake.generator": "MinGW Makefiles"

或者这样:

  "cmake.preferredGenerators": [
     "MinGW Makefiles"
   ],

还有一个坑就是我安装的mingw面没有mingw32-make.exe ,然后点击生成时,vscode老是报错。。。

 开始具体操作

需要进行一下3步:

  • 在电脑上安装cmake
  • 在电脑上安装mingw
  • 在vscode里面进行一点配置操作

安装cmake

到cmake官网https://cmake.org/download/,下载最新的cmake,安装即可,注意是下载可执行文件,不是源文件:

在这里插入图片描述

安装完成后记得将bin路径添加到系统环境变量,确保在命令行中呢个直接搜索使用到cmake指令。

安装mingw

到mingw官网下载https://sourceforge.net/projects/mingw/,这个下载比较复杂,讲究也特别多,我是直接拉到底,下载已经配置好的安装包,并没有使用它的安装程序。

在这里插入图片描述

至于每个包代表的意思(参考的这位博主Mingw-w64在win10下的安装使用)如下(建议使用x86_64-win32-sjlj):

  • 64位系统选择x86_64,32位系统选择i686;
  • Threads设置线程标准可选posix或win32;
  • Exception设置异常处理系统,x86_64可选为seh和sjlj,i686为dwarf和sjlj;

安装完成后还是将它的安装路径里面的bin文件夹路径添加到系统环境变量中,确保在命令行中能检测得到gcc,g++,mingw32-make

在vscode里面进行相关配置

  • 安装插件CMake,CMake tools ,C/C++,C++ Intellisense
  • 先整好自己的C++配置文件 确保语法提示什么的都有大概如下:

"configurations": [

  {

   "name": "win64",

   "includePath": [

    "${workspaceFolder}/**",

    "${workspaceRoot}/Inc/",

    "D:/OpenCV3/build/include"

   ],

   "defines": [

    "_DEBUG",

    "UNICODE",

    "_UNICODE"

   ],

   "windowsSdkVersion": "8.1",

   "compilerPath": "C:/MySolfware/MinGW/bin/g++.exe",

   "cStandard": "c11",

   "cppStandard": "c++17",

   "intelliSenseMode": "gcc-64",

   "configurationProvider": "ms-vscode.cmake-tools"

  }

 ]

主要是设置好那个"includePath"和"compilerPath",根据自己的mingw路径去设置,其次这里要选择win64:

在这里插入图片描述

然后在设置里面的cmake configuration 那写好自己的cmake路径,确保vscode能找到我们的cmake。

在这里插入图片描述

最后如前面所说,需要在设置文件里写上:"cmake.generator": "MinGW Makefiles"

所有配置完成 开始跑程序

新建一个文件夹,准备搞上自己的程序,我的文件夹文件分布大概是这样的:

在这里插入图片描述

CMakeLists 内容大概是这样的:

# 最低CMake版本要求
cmake_minimum_required(VERSION 3.10.0)

# 项目名称
project(main)

# 设置C/C++标准
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

# 头文件路径
include_directories("Inc" "D:/OpenCV3/build/include")

# 枚举头文件
file(GLOB_RECURSE INCLUDES "Inc/*.h" "Inc/*.hpp")

# 指定引用的外部库的搜索路径
LINK_DIRECTORIES("D:/OpenCV3/mingw/install/x86/mingw/lib")

# 枚举源文件
aux_source_directory("Src" SOURCES)

# 输出路径
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)

# 生成可执行的文件
add_executable(${PROJECT_NAME} ${SOURCES} ${INCLUDES})

# 链接
TARGET_LINK_LIBRARIES(${PROJECT_NAME} libopencv_highgui310.dll.a libopencv_core310.dll.a
libopencv_calib3d310.dll.a
libopencv_features2d310.dll.a
libopencv_flann310.dll.a
libopencv_imgcodecs310.dll.a
libopencv_ml310.dll.a
libopencv_objdetect310.dll.a
libopencv_photo310.dll.a
libopencv_shape310.dll.a
libopencv_stitching310.dll.a
libopencv_superres310.dll.a
libopencv_video310.dll.a
libopencv_videostab310.dll.a
libopencv_imgproc310.dll.a
libopencv_videoio310.dll.a
)

接下来就是写程序,然后选定工具包kit,然后点击生成全部即可。。

在这里插入图片描述

到此这篇关于windows下vscode使用cmake的方法的文章就介绍到这了,更多相关vscode使用cmake内容请搜索猪先飞以前的文章或继续浏览下面的相关文章希望大家以后多多支持猪先飞!

[!--infotagslink--]

相关文章

  • vscode安装git及项目开发过程

    这篇文章主要介绍了vscode安装git及项目开发过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-05-19
  • Vscode上使用SQL的方法

    这篇文章主要介绍了Vscode上使用SQL的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-01-26
  • VSCode 配置uni-app的方法

    这篇文章主要介绍了VSCode 配置uni-app的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-11
  • vscode搭建STM32开发环境的详细过程

    这篇文章主要介绍了vscode搭建STM32开发环境的详细过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-05-02
  • VSCode C++多文件编译的简单使用方法

    这篇文章主要介绍了VSCode C++多文件编译的简单使用方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-29
  • VSCode配置C#运行环境的完整步骤

    这篇文章主要给大家介绍了关于VSCode配置C#运行环境的完整步骤,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-08
  • 浅谈Vue开发人员的7个最好的VSCode扩展

    这篇文章主要介绍了浅谈Vue开发人员的7个最好的VSCode扩展,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-20
  • vscode和cmake编译多个C++文件的实现方法

    这篇文章主要介绍了vscode和cmake编译多个C++文件的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-10
  • Windows配置VSCode+CMake+Ninja+Boost.Test的C++开发环境(教程详解)

    这篇文章主要介绍了Windows配置VSCode+CMake+Ninja+Boost.Test的C++开发环境,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-05-12
  • 如何使用VSCode配置Rust开发环境(Rust新手教程)

    这篇文章主要介绍了如何使用VSCode配置Rust开发环境(Rust新手教程),本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-27
  • vscode通过Remote SSH远程连接及离线配置的方法

    这篇文章主要介绍了vscode通过Remote SSH远程连接及离线配置的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-16
  • VSCode搭建C/C++编译环境的详细教程

    Visual Studio Code是一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、GIT 等特性,这篇文章主要介绍了VSCode搭建C/C++编译环境,需要的朋友可以参考下...2020-05-15
  • VSCode 云同步扩展设置Settings Sync插件

    这篇文章主要介绍了VSCode 云同步扩展设置Settings Sync插件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-29
  • 关于VSCode格式化JS自动添加或去掉分号的问题

    这篇文章主要介绍了VSCode格式化JS自动添加或去掉分号的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-10-12
  • VSCode 添加自定义注释的方法(附带红色警戒经典注释风格)

    这篇文章主要介绍了VSCode 添加自定义注释的方法(附带红色警戒经典注释风格),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-08-28
  • 解决 VSCode 编写 C++11 代码报红问题分析

    今天在写 C++ 代码的时候用上 C++11 的特性,然后发现 VSCode 虽然可以编译通过,但是会在相应位置报红,这是怎么回事呢?下面小编给大家带来了解决方法,一起看看吧...2021-09-27
  • VSCode自定义配色方案的实现

    这篇文章主要介绍了VSCode自定义配色方案的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-29
  • VSCode设置网页代码实时预览的实现

    这篇文章主要介绍了VSCode设置网页代码实时预览的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-29
  • 浅谈CMake配置OpenCV 时静态链接与动态链接的选择

    下面小编就为大家带来一篇浅谈CMake配置OpenCV 时静态链接与动态链接的选择。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-04-25
  • vscode 前端最佳配置小结

    这篇文章主要介绍了vscode 前端最佳配置小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-29