vscode, cmake编译多个C++文件
目的是利用vscode及相关插件编译多个C++文件。
我已经装好cmake和mingw并且将它们的路径添加到系统变量path中了。
vscode装上如下几个插件:
点击vscode左上角 文件->首选项->设置,弹出如下窗口:
cmake tools里头有一项cmake.preferredGenerators要根据编译器修改成对应的值,mingw对应的是MinGW Makefiles
下面一项cmake要配置cmake的安装路径,我的是C:\\Program Files\\CMake\\bin\\cmake
随便新建个文件夹新建个CMakeLists.txt,先确认一下不编译文件时vscode和cmake能不能正常工作,
CMakeLists.txt内容如下:
- cmake_minimum_required(VERSION 2.6)
- # avoid some cmake warnings
- IF(POLICY CMP0026)
- CMAKE_POLICY(SET CMP0026 OLD)
- ENDIF()
- SET(test_message "test vscode and cmake")
- MESSAGE (STATUS "test_message: ${test_message}")
这个时候插件会自动生成一个build文件夹
然后点击左下角的,弹出一个
随便点一个debug,会弹出一堆和执行 cmake . 一样的信息来,也能成功打印test_message。
说明vscode和cmake可以正常工作。再点一下左下角的build,就make了。得到提示信息
- #include<iostream>
- #include"mathfunc.h"
- using namespace std;
- int main(){
- double a,c;
- cout << "enter a and b: " << endl;
- cin >> a >> c;
- cout << "a*b*b = " << scjfunc(a,c) << endl;
- system("pause");
- return ;
- }
- #include"mathfunc.h"
- double scjfunc(double a, double b)
- {
- return a*b*b;
- }
- #ifndef MATHFUNC_H
- #define MATHFUNC_H
- double scjfunc(double a, double b);
- #endif
- cmake_minimum_required(VERSION 2.8)
- project(demo)
- aux_source_directory(. DIR_SRCS)
- add_executable(demo ${DIR_SRCS})
和没添加源文件时的操作一样就可以生成exe了。不会自动运行exe。
要debug的话,在CMake Tools configuration中找到cmake.debugConfig,设置成:
- "cmake.debugConfig": {
- "miDebuggerPath": "C:\\MinGW\\bin\\gdb.exe",
- "externalConsole": true,
- "stopAtEntry": false
- }
然后点击vscode下面的可以调试,画面如下:
目的达成。
vscode, cmake编译多个C++文件的更多相关文章
- centos 7 vscode cmake 编译c++工程
一.环境说明 1)gcc/g++ cmake安装建议 gcc/g++内核自带的即可,如果需要新的自行安装, cmake也一样,如有需要新的版本自行安装. 2)vscode安装插件 必要的插件c/c+ ...
- windows10下vscode+cmake编译Qt5代码
概述 本文演示环境: windows10 cmake version:3.18 qt version: 5.14 vscode version: 1.54.1 本文演示环境基于在线模式, 离线使用VS ...
- windows10使用vscode+cmake编译c++代码
概述 本文将介绍 VScode + cmake 在 windows10上编译c++代码 前提: 我之前已经安装过VS2017, 故 编译将采用cl.exe. 开始之前 本文演示环境基于 windows ...
- windows10下vscode+cmake编译Qt5代码(2)
概述 本文依赖 前文 本文将介绍使用cmake语法屏蔽运行Qt exe的cmd窗口 解决办法 配置VS项目属性, 缺点: cmake重新 configure后,项目属性会重置,再次运行还将出现cmd弹 ...
- [转]一个CMake编译问题的解决过程
问题的提出 公司的一个power-pc平台的产品,有个协议进行了修改,过程中出现了比较奇怪的情况.直接将修改后的动态库下载到设备上(原始设备是有文件系统和其他的依赖文件的,相当于部分更新应用),设备和 ...
- linux 下 VSCODE 使用CMake编译STM32程序
项目在做什么 项目地址 本项目是为了研究MCU在linux下开发而做的 --build 存放cmake编译生成的文件 --cmake 存放cmake编译时会用到的文件,比如工具链检查.编译选项等 -- ...
- 解决vscode可以编译通过c++项目,但头文件有红色波浪线的问题
解决vscode可以编译通过c++项目,但头文件有红色波浪线的问题 一.问题描述 我是在Ubuntu 16.04的环境下,用vscode写代码的,一般不使用vscode自带的编译环境,而是用cmake ...
- Cmake知识----编写CMakeLists.txt文件编译C/C++程序
1.CMake编译原理 CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多.CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt ...
- ubuntu下,VSCode采用cmake编译C++工程
首先在VSCode中下载CMake和CMake Tools两个插件. 选中CMake Tools,可以看到在VSCode中如何使用cmake编译C++工程的教程. 官网教程 最重要且最实用,看这个网址 ...
随机推荐
- 在Visual Studio 2017中安装bower
在项目目录下添加一个文件.bowerrc { "directory": "wwwroot/lib" } JS包默认安装到webroot的lib文件夹,可以通过. ...
- jquery+jquery.rotate实现图片旋转效果
首先要下载jquery.min.js 和jquery.rotate.js文件 1.下载地址: https://www.jb51.net/jiaoben/554113.html 2.导入文件 <s ...
- Mac安装brew(遇到的坑)
1.安装方法: 网上都会有 命令行输入 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/i ...
- caffe drawnet.py 用Python画网络框架
在caffe中可以使用draw_net.py轻松地绘制卷积神经网络(CNN,Convolutional Neural Networks)的架构图.这个工具对于我们理解.学习甚至查错都有很大的帮助. 1 ...
- python day18--面向对象,继承
# class Animal: # breath = '呼吸' # # def __init__(self, name, sex, age): # self.name = name # self.se ...
- python+flask开发小白第二天
使用VSCode编译python web页面 1.先从最基础的说起吧,关于VSCode的使用: 运行python程序与运行java,c,c++程序一样,需要新建一个文件,第一个文件建议不要新建在本地的 ...
- Oracle(二)在 Mysql 的基础上学习 Oracle
毕竟我是先学的mysql,对数据库的一切认知都会有一个先入为主的思想在里面,如果不搞清楚其中的异同,我感觉Oracle我是学不会 了,甚至会把它们混淆.那么,不会mysql的没必要往下看了. 下边第一 ...
- mount: mounting proc on /proc failed: Device or resource busy
/********************************************************************** * mount: mounting proc on /p ...
- 初学java集合框架笔记
List接口常用方法: 方法名 说 明 boolean add(Object o) 在列表的末尾顺序添加元素, 起始索引位置从0开始 void add(int index,Object o) 在 ...
- JAVA第八次作业
JAVA第八次作业 (一)学习总结 1.用思维导图对本周的学习内容进行总结 参考资料: XMind. 2.通过实验内容中的具体实例说明在执行executeUpdate()方法和executeQuery ...