macOs下优雅的配置C语言环境

前言

我看国光大佬博客有很多这种优雅配置环境的系列。所以我也在搞一个 哈哈哈哈

因为近期准备考试的缘故 要写一些C的代码,所以需要在macOS上搭建环境,这里因为我不会去写一些代码量非常多的代码这里就用vscode去配置一些插件 。看网上说在macOS下用xcode去写c比较好。不过xcode体积太大,而且考试结束C应该接触的很少。故采用轻量的vscode。

vscode插件安装

打开VSCode 按快捷键shift+command+X,并在搜索框输入c/c++ 安装此插件image-20200813105500929

这时候新建一个目录 拖进vscode后新建一个hello.c文件内容为

1
2
3
4
5
6
#include<stdio.h>

int main(){
printf("hello \n");
return 0;
}

配置

使用快捷键command+shift+p打开命令行面板

输入edit configurations,在弹出的列表中选择带JSON的C/C++:Edit Configurations(JSON)image-20200813140638235

此时会自动新增.vscode文件夹,并新建c_cpp_properties.json文件修改文件内的includePath字段为

1
2
3
4
5
6
7
8
"includePath": 
[
"${workspaceFolder}/**",
"/Library/Developer/CommandLineTools/usr/include/c++/v1",
"/usr/local/include",
"/Library/Developer/CommandLineTools/usr/lib/clang/11.0.3/include",
"/Library/Developer/CommandLineTools/usr/include"
],

/Library/Developer/CommandLineTools/usr/lib/clang/11.0.3/include中的版本号,调整为自己的版本号,进入访达 按快捷键command+shift+G输入/Library/Developer/CommandLineTools/usr/lib/clang/查看版本号image-20200813141029914

紧接着再次打开命令行面板command+shift+P,输入tasks:configure task,选择Tasks:Configure Taskimage-20200813141323948

后接着选择C/C++:gcc build active file之后会自动生成tasks.json文件并打开image-20200813141414476

修改tasks.json文件的args字段为

1
2
3
4
5
6
7
8
"args": [
"-g",//编译命令
"${fileDirname}/${fileBasenameNoExtension}.c",//当前目录下的当前文件名后面拼接.c后缀
"-o",//输出文件命令
"${fileDirname}/${fileBasenameNoExtension}.o",//当前目录下的当前文件名后面拼接.o后缀
"&&", //前面是编译 这里是执行文件 不写这两行的结果是只编译不执行,这当然不是我们想要的效果
"${fileDirname}/${fileBasenameNoExtension}.o",
]

接下来我们再次打开命令行面板command+shift+P,输入launch,选择Open launch.jsonimage-20200813142314825

环境选择C++(GDB/LLDB)image-20200813142352129

选择配置为gccimage-20200813142502109

修改字段program

1
"program": "${fileDirname}/${fileBasenameNoExtension}.o",

编译并运行文件

command+shift+B编译并运行代码,最终打印了hello。image-20200813142702739