在windows上使用cmake编译C/C++程序时,首先需要CMake,安装gcc/g++编译环境,然后使用VSCode 以及配置下CMakelist.txt。
所需工具:
C/C++
C++ Intellisense
CMake
CMake tools
CMake Tools Helper
下载链接:
https://cmake.org/download/
尽量选择Latest Release版本,比较稳定。
如图中红框所示,下载后缀为.msi的安装文件,然后直接安装。
安装目录选择默认:C:\Program Files\CMake\
在命令行 输入如下指令
cmake -version
在ubuntu系统上我们可以直接安装gcc/g++,但在windows上无法直接安装g++,这时候就需要用到MinGW啦,MinGW是从Cygwin(1.3.3版)基础上发展而来。GCC支持的语言大多在MinGW也受支持,其中涵盖C、C++、Objective-C、Fortran及Ada。对于C语言之外的语言,MinGW使用标准的GNU运行库,如C++使用GNU libstdc++。
下载链接:
https://sourceforge.net/projects/mingw/
这个是在线安装器,需要在线下载安装内容安装,才会完成安装,安装地址建议使用默认路径,避免出现一些莫名的问题:
C:\MinGW
如果下的是兼容32/64位的版本,下载安装默认路径是"C:\Program Files(x86)…",安装的时候需要删去"Program Files(x86)",把“mingw32-make.exe”重命名为"make.exe,这样才能正常使用。
根据需要选择你的组件。右键选择“Mark for Installation”,之后选择"Installation -> Apply Changes”。等待下载完成。
在命令行 输入如下指令
gcc -v
make -v
一般刚安装CMake插件后 会自动提示你选择一个编译工具链,如果没有提示或者想更换其他编译工具链,那么可以通过ctrl+shifl+p,输入以下指令,然后在弹出框中选择自己安装的编译工具链。
CMake:Select a Kit
如果想重新配置本地的编译工具链的安装位置,那么可以打开如下配置
CMake:Edit user-local CMake kits
配置完毕~
main.cpp
#include
using namespace std;
int main(int agec, char **argv) {
cout << "hello word ,form vscode cmake" << endl;
}
CMakeLists.txt
cmake_minimum_required(VERSION 3.0)
project(vscode_cmake_Test)
aux_source_directory(. DIR_TOOT_SRCS)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g")
add_executable(${PROJECT_NAME} ${DIR_TOOT_SRCS})
第一次需要输入"cmake -G"Unix Makefiles" …/",尤其是电脑装了Visual Studio如果直接"cmake …"会生成VS的工程文件,所以这里需要指定下。
mkdir build
cd build
cmake -G "Unix Makefiles" ../
输出如下:
> cmake -G "Unix Makefiles" ../
-- The C compiler identification is unknown
-- The CXX compiler identification is GNU 7.3.0
-- Check for working C compiler: C:/Develop/Tools/bin/cc
-- Check for working C compiler: C:/Develop/Tools/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: C:/Develop/Tools/bin/c++.exe
-- Check for working CXX compiler: C:/Develop/Tools/bin/c++.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Users/Makesky/Desktop/VSCodeCmakeTest/VSCodeCmakeTest/build
make
> .\vscode_cmake_Test.exe
hello word ,form vscode cmake
非常棒,搞定~