如何在Linux/MacOS使用vscode构建一个c/c++开发环境

linux

无论您是否是《指环王》电影的粉丝,您都会同意几乎每个人都喜欢统一性,而拥有统一的开发体验是开发人员一直在努力和欢迎的东西。

长期以来,开发环境一直与特定技术(例如 Visual Studio)紧密结合,用于主要基于.NET的开发。我们已经看到开发人员之间的激烈争论,他们无休止地争论一种工具而不是另一种工具。这永远不会结束,也不应该结束,因为很多时候这些争论会产生我们今天正在使用的很棒的工具。

在这篇文章中,我将与您分享一个使用VS Code的简单C/C++开发环境设置。如果您已经将VS Code与其他一些编程语言一起使用,那么您已经成功了一半。对于其他人,你们可以看看Linux用户都是怎么构建自己的开发环境,以及是否想尝试一下。

VS Code是一个轻量级、开源、免费且可扩展的IDE,并且它每天都在变得更好。我经常在我的Node.js开发工作中使用它。

在本教程中,我将向您展示如何在Linux/MacOS使用vscode构建一个c/c++开发环境。我们还将说明如何是用vscode创建c/c++项目。如何使用vscode调试c/c++项目。安装调试c/c++的调试器gdb,编译器gcc与g++等工具以及语法检查工具clang和cppcheck。还有vscode需要的语法高亮,linter扩展如C/C++ for Visual Studio Code,C/C++ Advanced Lint等。

如果你是windows用户,请看这篇文章。如何在windows中安装Visual Studio并构建一个c/c++开发环境。

C++教程:安装集成开发环境IDE | myfreax一个集成开发环境IDE是一个软件包含了所有你需要开发,编译,链接和调试程序的工具。对于Windows用户建议安装Visual Studio 2019社区版。Linux用户请使用vscode或者Codeblock IDEmyfreaxmyfreax

安装c/c++开发工具包

Fedora/Red Hat/CentOS/Opensuse或者 Scientific

yum groupinstall 'Development Tools'

ubuntu/Debian

sudo apt-get update

sudo apt-get install build-essential manpages-dev

安装Vscode

vscode具体安装方式请参考下面的连接,里面包括各种Centos,Ubuntu,Debian等发行版安装vscode教程。

vscode - myfreaxmyfreax 29 Jun 2021 • 3 min readmyfreax

安装C/C++ for Visual Studio Code扩展

打开你的Vscode,在活动栏中选择扩展图标按钮或者按下快捷键Ctrl+Shift+X ,然后搜索c++,点击安装。

配置C/C++扩展

你也许会看不惯函数之后的中括号{换行,但这是C/C++的默认风格。我们认为如果你想折腾请继续使用这种风格,毕竟是官方标准,形成这个习惯看很多c/c++代码就不难。这种风格只有对长期使用使用不换行的人才就会形成强逼症,习惯已经养成难以改变,还有一点就是找写着写着中括号不知道在那里了。接下来我们改变这种函数后面中括号的换行的风格。

打开你的vsocde设置,找到c/c++扩展设置,在搜索框中输入format,找到C_Cpp: Clang_format_fallback Style设置,这是一个输入框,你可以输出值的包括Visual Studio, LLVM, Google, Chromium, Mozilla, WebKit, Microsoft, GNU, none,个人选择Google。请安装你的个人喜好配置,这里不细说各个风格设置。

你也可以直接编辑vscode的设置json,像下面这样:

{

....

"C_Cpp.clang_format_fallbackStyle": "Google",

....

}

安装C/C++ Advanced Lint for VS Code扩展

打开你的Vscode,在活动栏中选择扩展图标按钮或者按下快捷键Ctrl+Shift+X ,然后搜索c++,点击安装。

配置C/C++ Advanced Lint for VS Code扩展

C/C++ Advanced Lint仅只是一个插件,对代码的分析是使用clang或者cppcheck进行lint检查。因此我们还需要安装clang以及cppcheck程序。对与Linux用户安装这个也是非常简单。只需要简单执行下面的命令即可。

Debian/Ubuntu安装clang与cppcheck

sudo apt-get install clang cppcheck

macOS

对于macOS用户,安装Xcode及其CLI工具时已包含Clang。

brew install cppcheck

现在,lint检查工具已经安装完成。但是在默认情况,C/C++ Advanced Lint会对c/c++都进行lint检查。这回导致某些语法冲突。因此,我们需要针对特定c语言项目或者c++项目启用获取关闭插件。如果你是同时写c++或者c在一个项目。那你自己看着办吧,相信你已经大佬了。

接下来我们说说怎么打开关闭c/c++的lint检查。打开你的C/C++ Advanced Lint扩展的设置,找到C-cpp-flylint › Clang: Enable的复选框,打勾表示启用。对于c++,c++使用的是cppcheck。启用或者关闭c++的lint的检查选项是C-cpp-flylint › Cppcheck: Enable,这个一个复选框,打勾表示启用。

创建c语言的项目

使用cd命令切换到你的家目录并且使用mkdir命令执行mkdir -p c/helloworld创建文件夹,我们将在此文件夹中创建c项目。接下来,我们先关闭C/C++ Advanced Lint扩展的c++ lint检查,选项是C-cpp-flylint › Cppcheck。接着创建一个helloworld.c文件,请在c文件输出以下内容:

时间问题,后面补上

创建c++语言项目

使用cd命令切换到你的Home家目录并且使用mkdir命令执行mkdir -p cpp/helloworld创建文件夹,我们将在此文件夹中创建c++项目。接下来,我们先关闭C/C++ Advanced Lint扩展的c lint检查,选项是C-cpp-flylint › Clang。接着创建一个helloworld.cpp文件,请在helloworld.cpp文件输出以下内容:

#include <iostream>

#include <vector>

#include <string>

using namespace std;

int main()

{

vector<string> msg{"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"};

for (const string &word : msg)

{

cout << word << " ";

}

cout << endl;

}

helloworld.cpp

如何使用Vscode调试c++项目

现在我们已经创建c++项目的需要的文件,接下来我们要配置vscode,让vscode可以调试c++代码。在你的项目根目录中创建文件夹.vscode 使用mkdir命令:mkdir -p cpp/helloworld/.vscode,创建三个文件分别是c_cpp_properties.jsonlaunch.jsontasks.json ,内容如下:

{

"configurations": [

{

"name": "Linux",

"includePath": [

"${workspaceFolder}/**"

],

"defines": [],

"compilerPath": "/usr/bin/g++",

"cStandard": "c11",

"cppStandard": "c++17",

"intelliSenseMode": "${default}"

}

],

"version": 4

}

c_cpp_properties.json

c_cpp_properties.json文件主要是配置c++项目的include的path,以及使用c/c++的版本,在这个示例中使用c的标准版本是c11,c++的标准版本是c17。include路径是标准的Linux系统头文件路径和项目文件夹下所有的include目录。

{

"version": "0.2.0",

"configurations": [

{

"name": "g++ build and debug active file",

"type": "cppdbg",

"request": "launch",

"program": "${fileDirname}/${fileBasenameNoExtension}",

"args": [],

"stopAtEntry": false,

"cwd": "${workspaceFolder}",

"environment": [],

"externalConsole": false,

"MIMode": "gdb",

"setupCommands": [

{

"description": "Enable pretty-printing for gdb",

"text": "-enable-pretty-printing",

"ignoreFailures": true

}

],

"preLaunchTask": "g++ build active file",

"miDebuggerPath": "/usr/bin/gdb"

}

]

}

launch.json
{

"version": "2.0.0",

"tasks": [

{

"type": "cppbuild",

"label": "C/C++: g++ build active file",

"command": "/usr/bin/g++",

"args": [

"-fdiagnostics-color=always",

"-g",

"${file}",

"-o",

"${fileDirname}/${fileBasenameNoExtension}"

],

"options": {

"cwd": "${fileDirname}"

},

"problemMatcher": [

"$gcc"

],

"group": "build",

"detail": "compiler: /usr/bin/g++"

}

]

}

tasks.json

当上面文件你都已经创建完成,请按下ctrl+shift+b先构建cpp文件的二进制,解下来按下F5键开始进行调试。

结论

至此,你已经基本完成了如何在Linux/MacOS使用vscode构建一个c/c++开发环境。如果你遇到任何问题欢迎在下面发表评论。

以上是 如何在Linux/MacOS使用vscode构建一个c/c++开发环境 的全部内容, 来源链接: utcz.com/z/507767.html

回到顶部