VScode踩坑 windows 7 下如何实现正确结合 CMake 编译.

4 篇文章 0 订阅
4 篇文章 0 订阅

前面安装就不废话了.
前面踩了一个坑 大家可以参考 Visual studio Code 安装 CMake 踩坑日志. 无法找到你的 新安装的编译工具 kit

★ 接下来我先谈谈.C++ 编译器,其他编译工具,是如何结合第三方 IDE 配合的.以便于理解CMake 与 VSCode 如何配合使用
例如 notepad++ 通过命令行工具完成编译操作的.

在这里插入图片描述

先说这个是,让小白不要走弯路. 利用 命令行工具编译,集成到 notepad++ 用快捷键调用显示在输出窗口
在这里插入图片描述
规则在帮助文档中
在这里插入图片描述
这就是所有的 IDE + kit +命令行 的基本原理.
无论什么IDE 都要通过不同形式调用 编译工具,gcc,g++ ,…make 等,完成

VSCode 也是一样的, 插件 CMake 和 Tool 工具 只是提供,给 VSCode 帮助码农,提供"脚本" 以便于 CMake 生成make,文件
再从VSCode 的task.json ,脚本提供快捷方式
但是依然是调用的命令行, VSCode 这种方式可以帮助大型项目管理自身.通过插件与其他项目工具(例如:cmake) 结合.
提高可移植性.

刚刚接触 VSCode 环境有点蒙圈!
下面是 tasks.json 如何调用命令行的 :方式
在这里插入图片描述
上面其实还是.利用控制台调用第一个任务"cmake" 组织编译过程文件脚本,第二个任务 “make” 执行编译,链接过.
CMake 参与了.如何生成脚本make文件的过程,

在这里插入图片描述
你当然可以将所有的 CMake 过程写在一个 CMakeLists.txt 文件中,但是这样容易出错.
所以我参考了 文章_________________点击图片 介绍 CMake 真正的 和VSCode 结合的使用方法

首先根目录的
下图: CMakeLists.txt 文件

PROJECT(maintest)#设置工程名  
ADD_SUBDIRECTORY(src)  #通知make有目录
CMAKE_MINIMUM_REQUIRED(VERSION 3.7)#设置版本号  
  
MESSAGE(STATUS "This is BINARY dir " ${maintest_SOURCE_DIR})  
MESSAGE(STATUS "This is SOURCE dir " ${maintest_SOURCE_DIR})  


#主文件main.cpp 设置 :
SET(EXECUTABLE_OUTPUT_PATH ${maintest_SOURCE_DIR}/build)  #执行程序输出目录
SET(SRC_LIST main.cpp)  
  
INCLUDE_DIRECTORIES(${maintest_SOURCE_DIR}/include)  
LINK_DIRECTORIES(${maintest_SOURCE_DIR}/lib)  
  
ADD_EXECUTABLE(maintest ${SRC_LIST})  
TARGET_LINK_LIBRARIES(maintest src)  

这个 CMakeLists.txt只管理 当前目录的 文件组织.
通过 ADD_SUBDIRECTORY(src) #通知make有目录

其次src目录的
下图: CMakeLists.txt 文件

    SET(LIBRARY_OUTPUT_PATH ${maintest_SOURCE_DIR}/lib)  
    SET(CMAKE_C_COMPILER g++)  
    SET(SRC_LIST Cat.cpp)  
    INCLUDE_DIRECTORIES(${maintest_SOURCE_DIR}/include)  
    ADD_LIBRARY(src STATIC ${SRC_LIST})  

第二个 CMakeLists.txt 文件 ,也只是管理当前目录的文件.

这样 CMakeLists.txt 文件分开的办法,适合更多文件的管理.

  1. 对于,语法错误,和文件符号的定义是通过 .vscode 下的 c_cpp_properrties.json 处理

在这里插入图片描述

等配置好这些后,其实 CMake 是从 VSCode 外部运行的.
通过控制台调用 CMake 分析 CMakeLists.txt 生成一系列的make 目标文件
在这里插入图片描述
首先在控制图看到可以使用再看VSCode的复杂配置环境就简单了
在这里插入图片描述

为了这个小问题,糊涂了好一阵子.希望能看到此文的人也能了解,

make.exe 执行文件 就是mingw32-make.exe 文件
本文的源码 下载

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值