vscode 利用cmake工具构建c

工具合集
demo

win10cmake构建

工具

  • cmake:项目构建工具
  • minigw64:gcc编译工具,里面包含make工具(需要改名)
  • ninja:项目构建工具
  • vscode:编辑工具
    vscode 插件:
    1.Cmake
    2.Cmake Tools

安装并添加环境变量

  • 直接安装cmake.msi到D:/gcc/Cmake
  • 解压minigw64到D:/gcc/minigw64
  • 解压ninja到D:/gcc/Cmake/bin

验证

win + r
cmd
cmake --version
gcc --version
ninja --version

构建项目

项目文件结构

│  CMakeLists.txt
│  mian.c
│
├─.vscode
│      c_cpp_properties.json
│      launch.json
│      tasks.json
│
└─src
        CMakeLists.txt
        func.c
        func.h

cmake构建项目

  • cmake文件编写
src/CMakelists.txt

# 遍历目录中所有源文件
aux_source_directory(. DIR_SRCS)
#使用指定的源文件将库添加到项目中。
add_library( src ${DIR_SRCS})
CMakelists.txt

#最低要求的CMake版本
cmake_minimum_required (VERSION 2.8)
# cmake 标准
set(CMAKE_CXX_STANDARD 11)
# 项目名称
project(hello) 
# 添加一个子目录到build文件夹
add_subdirectory(src)
# 便利当前目录发现所有源文件
aux_source_directory(. DIR_SRCS)
# 要求编译可执行文件
add_executable (
    ${PROJECT_NAME} 
    ${DIR_SRCS}
    ) 
target_link_libraries(
    ${PROJECT_NAME} 
    src
)
  • cmake文件配置
    F1---->输入cmake config–> 选择 gcc编译器
    F1---->Cmake:配置(项目配置)

  • 验证配置

	终端:
	cd build
	make
	./hello.exe

配置vscode

  • 配置c 环境脚本
    F1---->输入c/c++ --> 选择 c/c++:编辑配置(JSON)
{
   "configurations": [
       {
           "name": "Win32",
           //头文件路径
           "includePath": [
               "${workspaceFolder}/**",
               "${workspaceFolder}/src/**"
           ],
           //宏定义
           "defines": [
               "_DEBUG",
               "UNICODE",
               "_UNICODE"
           ],
           //编译工具
           "compilerPath": "D:\\gcc\\mingw64\\bin\\gcc.exe",
           "cStandard": "gnu18",
           "cppStandard": "gnu++14",
           "intelliSenseMode": "gcc-x64",
           "configurationProvider": "ms-vscode.cmake-tools"
       }
   ],
   "version": 4
}
  • 配置调试脚本
    F1---->输入debug–> 选择 调试:打开launsh.json–>gdb.exe
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "gcc.exe - 生成和调试活动文件",
            "type": "cppdbg",
            "request": "launch",
            //注意此处需要配置调试目标的完整路径
            "program": "${workspaceFolder}\\build\\hello.exe",
            "args": [],
            "stopAtEntry": false,
            //命令执行目录
            "cwd": "${workspaceFolder}\\build",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "D:\\gcc\\mingw64\\bin\\gdb.exe",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            //调试前先执行编译
            "preLaunchTask": "make"
        }
    ]
}
  • 配置编译脚本
    F1---->输入task–> 选择 任务:配置任务–>gdb.exe
{
    "tasks": [
        {
            "type": "shell",
            "label": "make",
            "command": "make",
            "args": [
            ],
            "options": {
                //命令执行目录
                "cwd": "${workspaceFolder}\\build",
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ],
    "version": "2.0.0"d
}
  • 验证vscode配置
    ctrl + shift +b — 》 make
    F5 调试

linux cmake 构建

安装 cmake

sudo apt-git install cmake

cmake文件不变

编译脚本 build.sh

#!/bin/bash
echo "cmake build !"

# 判断输出文件夹是否存在
if [ -d "./build/" ];then
  echo "文件夹存在,删除重新创建"
  rm -rf ./build/
  mkdir ./build/
else
  echo "文件夹不存在,创建"
    mkdir ./build/
fi

cd ./build
cmake ./../

echo "make build !"
make 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值