安装配置visual studio code c/c++环境
**windows GTK配置(1)安装配置visual studio code c/c++环境**这几天看了很多的文章说实话在vscode配置GTK可把我难为死了。没有人写这个教程并且其他vscode的配置教程讲的也很乱。这几天几乎把所有的坑都踩了一遍,所以有了今天的文章。我总结了大多的坑希望对大家有帮助!关于GTK我将在下一篇文章写第一部分;安装配置visual studio code...
**
安装配置visual studio code c/c++环境
**
这几天看了很多的文章说实话在vscode配置GTK可把我难为死了。没有人写这个教程并且其他vscode的配置教程讲的也很乱。这几天几乎把所有的坑都踩了一遍,所以有了今天的文章。我总结了大多的坑希望对大家有帮助!关于GTK我将在下一篇文章写
第一部分;安装配置visual studio code c/c++环境
1)首先我们先在官网下载 visual studio code 然后进行基本插 件安装
https://code.visualstudio.com/
下载和安装过程不在赘述因为是windows系统和一般的软件安装方法一样
注意!visual studio code只是一个单纯的文本编辑器并不是IDE 还需要手动配置
打开vscod 点击插件
在搜索框中输入Chinese安装中文语言包
安装后会提示重启 如果没有提示可自己手动重启!
然后就是中文界面了!是不是很神奇哈哈哈
2)现在我们来进行下载msys2 虽然直接下载mingw配置会更方便但是为了以后安装GTK方便所以还是使用了msys
下载msys2 https://www.msys2.org/
选择一个文件夹安装下一步即可!因为我的电脑已经安装过了所以无法再次安装
因为官方的服务器在海外下载速度感人所以在安装后需要修改sever地址
在安装盘:\安装目录\msys64\etc\pacman.d 找到mirrorlist.mingw64文件 如果找不到就直接搜索mirrorlist.mingw64(这里我一直使用的是msys64)
用记事本打开mirrorlist.mingw64并把其中的内容替换为;中国科技大的开源库(清华的开源库下载时容易失败)然后保存!
##
## 64-bit Mingw-w64 repository mirrorlist
##
## Primary
## msys2.org
Server = http://mirrors.ustc.edu.cn/msys2/mingw/x86_64/
Server = http://repo.msys2.org/mingw/x86_64
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
Server = http://www2.futureware.at/~nickoe/msys2-mirror/x86_64/
Server = http://mirror.bit.edu.cn/msys2/REPOS/
然后打开msys64
进入之后先来查看并安装gcc`
$ pacman -Sl|grep gcc //查看可安装版本!(注意-s大写!)
然后使用
$ pacman -S +安装包名称开始安装(注意-s大写!)
这里我己经安装过了
安装完成后安装gdb 和安装gcc一样
$ pacman -Sl|grep gdb //查看可安装版本!(注意-s大写!)
$ pacman -S +安装包名称开始安装(注意-s大写!)
最后安装mingw64 方法同上
$ pacman -Sl|grep mingw64 //查看可安装版本!(注意-s大写!)
$ pacman -S +安装包名称开始安装(注意-s大写!)
3)配置环境变量
在"系统属性"中配置环境变量
点击新建后输入
安装盘:\安装目录\msys64\mingw64\bin 保存
然后打开cmd测试是否安装成功
这样就是安装成功了!因为gcc我们没有给予任何参数所以报错。
4)最终配置
新建一个文件夹位置随意但要好找 然后通过vscode打开
我在这里建立了一个c_run文件夹用于储存我的配置文件(不要用中文名和格!!!!)
然后新建一个文件保存命名为.c格式 我在这里建立了一个1.c的文件写了个简单的代码
#include<stdio.h>
void exchange(int *a,int *b);
int main(void)
{
//简单的测试程序
int a,b;
a=1;
b=2;
printf("test\n");
printf("%d %d\n",a,b);
exchange(&a,&b);
printf("%d %d\n",a,b);
return 0;
}
void exchange(int *a,int *b)
{
int temp;
temp=*a;
*a=*b;
*b=temp;
}
启动调试
选择c++(GDB/LLDB)
选择第一个生成调试活动文件(万恶的launch.json)
因为我们使用的msys所以在launch配置时要注意!
原始的launch.json
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "gcc.exe - 生成和调试活动文件",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,//要把值改为true才会弹出黑框!
"MIMode": "gdb",
"miDebuggerPath": "C:\\msys64\\mingw64\\bin\\gdb.exe",
//编译器所在位置;注意地址是否有误!!!!!
//注意!必须是gdb否则无法测试!!!!!!
//注意!如果调试提示 miDebuggerPath 错误且路径没错时请把符号;\\ 改为;/
//注意包括找不到文件地址都可能是符号;\\ 造成的!
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "gcc.exe build active file"
}
]
}
Launch配置重点!
1;“externalConsole”;fales/true (二选一)控制是否弹出黑框(控制台窗口) 2"miDebuggerPath": “C:\msys64\mingw64\bin\gdb.exe”,
//编译器所在位置;注意地址是否有误!!!
//注意!如果调试提示 miDebuggerPath 错误且路径没错时请把符号;\ 改为;/
//注意包括找不到文件地址都可能是符号;\ 造成的! 改为;/
//注意!必须是gdb否则无法测试!!!!!!
//因为gcc是编译器没有调试功能所以 miDebuggerPath必须用 gdb.exe!!!!!!!
否则报错!!!!!!!!!
否则报错!!!!!!!!!
否则报错!!!!!!!!! ***
我配置的launch.json(仅从参考)`
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "gcc.exe - 生成和调试活动文件",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "C:\\msys64\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "gcc.exe"
}
]
}
然后继续调试,出错!点击配置任务
选择第一个。会自动生曾tasks,json
原始tasks.json
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "gcc.exe build active file",
//注意这个地方的参数必须和launch,json 中的"preLaunchTask"参数相同!
//你可以自己定义但要相同!
"command": "C:\\msys64\\mingw64\\bin\\gcc.exe",
"args": [ //这里是给gcc编译器的参数 下篇文章安装gtk会讲解这里不用更改!
//除非与这个不一样
"-g",
"${file}", //原文件目录
"-o", //编译
"${fileDirname}\\${fileBasenameNoExtension}.exe"
//编译后的文件生成目录
],
"options": {
"cwd": "C:\\msys64\\mingw64\\bin"
},
"problemMatcher": [
"$gcc"
],
"group": "build"
}
]
}
tasks.json配置注意事项!
- 注意"label"参数是否与launch,json 中的"preLaunchTask"参数相同
2)“args” 的参数是否有误
我的 tasks.json(仅供参考!)
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "gcc.exe",
"command": "C:\\msys64\\mingw64\\bin\\gcc.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:\\msys64\\mingw64\\bin"
},
"problemMatcher": [
"$gcc"
],
"group": "build"
}
]
}
直接调试或者按下F5
成功!!!
如果重启vscode则只需导入配置好的文件即可
注意!!! 只用选中c_run而不要去打开里面的.vscode文件夹再点击选择文件夹否则配置无法加载!!!!!!!
直接F5正常编译!!
如果有任何问题尽管提出我会尽量答复的!!!!
更多推荐
所有评论(0)