在VSCode 使用CMake编译C++项目(Ubuntu18)
-
新建一个空白项目
-
在vscode下载相关的插件,打开空白项目
扩展: cmake,cmake tools, c/c++
-
写好示例代码
相关文件的构成:. ├── CMakeLists.txt └── src ├── calcul.cpp ├── calcul.h └── main.cpp
CMakeLists.txt内容如下:
cmake_minimum_required(VERSION 3.10) # cmake最低版本 project(test_add) # 项目名称 aux_source_directory(./src DIR_SRCS) # source代码 add_executable(test_add ${DIR_SRCS}) # 生成的可执行文件
main.cpp主文件, calcul.cpp实现简单的三数加法,calcul.h头文件负责声明函数.
calcul.cpp代码:#include "calcul.h" int add(int a, int b, int c){ std::cout << "add func start..." <<std::endl; return a+b+c; }
calcul.h代码:
#include<iostream> int add(int a, int b, int c);
main.cpp代码:
#include<iostream> #include "calcul.h" int main(){ int a = 1, b= 2, c = 4, d; d = add(a, b, c); std::cout<< a <<" + "<< b <<" + "<< c << std::endl; std::cout<< " add result: " << d <<std::endl; return 0; }
-
Ctrl+Shift+P
,输入cmake ,选择configure
下方会出现cmake相关的图标:
-
选择 !
CMakel:[Debug]
图标,点击弹出的Debug出现:[main] Configuring folder: test
[cmake] Configuring done
[cmake] Generating done -
选择第五个🛠图标
GCC 7.5.7
(可自行选择) -
选择后面的⚙图标
Build
,出现:[build] Starting build
[proc] Executing command: /usr/bin/cmake --build /home/fhy/test/build --config Debug --target all – -j 10
[build] Scanning dependencies of target test_add
[build] [ 33%] Building CXX object CMakeFiles/test_add.dir/src/calcul.cpp.o
[build] [ 66%] Building CXX object CMakeFiles/test_add.dir/src/main.cpp.o
[build] [100%] Linking CXX executable test_add
[build] [100%] Built target test_add
[build] Build finished with exit code 0 -
选择小虫子Debug 或者 三角符号直接运行:
我这里直接运行,会跳到终端自动运行(如下图):
上图的
/home/fhy/test/build/test_add
, 就是编译出来的可执行文件.
再看文件目录,多了build文件夹
.
├── build
│ ├── CMakeCache.txt
│ ├── CMakeFiles
│ ├── cmake_install.cmake
│ ├── compile_commands.json
│ ├── Makefile
│ └── test_add # 可执行文件
├── CMakeLists.txt
└── src
├── calcul.cpp
├── calcul.h
└── main.cpp