VSCode 编译运行C++
简介
因为不想使用IDE,所以选择了vscode(windows)。使用clang++ 作为编译器在vscode上编译运行c++,用cmake 编写project。本文只是为了记录自己使用的过程,一些地方就一掠而过了。
VSCode使用clang 编译C++
下载LLVM
LLVM Download Page 首先下载windows版本LLVM,然后根据安装目录配置环境变量。例如C:\LLVM\bin。验证方法:在cmd中输入clang++ ,如果提示 clang++.exe: error: no input files 。则环境配置成功。
下载MinGW
网上有blog使用gcc 和g++时在MinGW Download Page 下载MinGW installer 后可以根据自己需要选择安装的包。
我是在SourceForge上下载MinGW-w64 然后将mingw64文件夹直接与LLVM目录合并,不会有冲突。这个时候就可以配置vscode环境。
p.s. 这个时候可以尝试一下 使用clang++ 编译cpp,会提示找不到头文件,仔细看输出发现:clang++.exe: warning: unable to find a Visual Studio installation; try running Clang from a developer command prompt [-Wmsvc-not-found]。
Well,重新运行clang++ test.cpp --target=x86_64-w64-mingw
,会在当前目录下发现生成的a.exe。
vscode 配置文件
话不多说,直接上代码:
- tasks.json
{
"version": "2.0.0",
"tasks": [
{
"label": "Compile", // 任务名称,与launch.json的preLaunchTask相对应
"command": "clang++", // 如果用MinGW,编译C用gcc,编译c++用g++
"args": [
"${file}",
"-o", // 指定输出文件名,不加该参数则默认输出a.exe
"${fileDirname}/${fileBasenameNoExtension}.exe",
"-g", // 生成和调试有关的信息
"-Wall", // 开启额外警告
"-static-libgcc", // 静态链接
"-fcolor-diagnostics",
"--target=x86_64-w64-mingw", // 默认target为msvc,不加这一条就会找不到头文件
"-std=c++1z" // c++1z即c++17,C语言最新标准为c11,或根据自己的需要进行修改
], // 编译命令参数
"type": "shell",
"group": {
"kind": "build",
&