最近用win10有点无聊,就尝试了一下linux,和大多数人一样,我选择了安装Ubuntu和Win10双系统,弄好之后感觉还是蛮不错的,稍微美化了一下~
弄好了系统,之后当然就是要敲代码咯,出于个人爱好,我比较喜欢用VScode来写代码,美观又直接,而我现在需要用C/C++和python的编译环境,所以我现在就介绍一下我是如何在VScode中配置这些环境的~
在配置环境之前,首先你需要确保你的linux系统安装了g++和python3。
g++ --version
python3 --version
你可以通过上面的命令来确认一下,这是我的版本,可能会有些不一样,但关系应该不大。
如果没有,你可以通过下面命令来获得:
sudo apt install g++
sudo apt install python3
上面的步骤弄好之后,我们就可以打开VScode开始配置了。首先你需要安装几个插件:
输入名字搜索即可看到,应该就是第一个,不过还有一个很好用的插件(上面的是必须要安装的):
安装好这个插件后,你直接按 F6 就可以对C++/C文件进行编译运行,不过无法设置断点调试~
差点忘了还有两个关于python的插件~
*安装flake8(错误检查)和yapf(美化代码)插件:
sudo apt-get install python-pip
pip install flake8
pip install yapf
我建议直接在vscode的终端里面执行这三行代码,可能安装的有点慢,耐心等待一下~然后VScode会有提示的,你可以看看是不是提示安装这两个插件的,如果是,就点击install或者相关的意思~
上面两个文件都是在.vscode目录下面的,如果没找到,那就自己在终端touch这两个出来吧,简单直接~
1)首先是launch.json文件的配置:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python3",
"type": "python",
"request": "launch",
"stopOnEntry": true,
"pythonPath": "${config:python.pythonPath}",
"program": "${file}",
"cwd": "${workspaceFolder}",
"env": {},
"envFile": "${workspaceFolder}/.env",
"console": "integratedTerminal"
},
{
"name": "gdb",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}/${fileBasenameNoExtension}.o",
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceRoot}",
"environment": [],
"externalConsole": false,
"preLaunchTask": "build(g++)",
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
这个文件对于python部分可以就那样copy过去,应该不会有太大的问题,对于C++的那部分在program那一项,我的是将.o文件放在我的cpp文件的目录下,如果你希望将.o文件放在主目录下的话你可以将后面的改为:
${workspaceRoot}
注意!!!:如果你更改了的话后面的task.json文件也需要作出相应的更改,后面我会提醒的,请注意
externalConsole这一项你不喜欢的话也可以改为true,这样就会在终端中打开你的代码了~
2)然后就可以配置task.json文件了
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "build(g++)",
"type": "shell",
"command": "g++",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}.o"
]
},
{
"label": "python3",
"type": "shell",
"command": "python3",
"args": [
"${file}"
],
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"reveal": "always",
"panel": "shared"
},
}
]
}
这就是我的task.json文件,直接copy进去的话我认为应该是没什么问题的,但有一个地方需要注意一下,就是我在前面说道的,如果你在launch.json更改了那个program那项的话,你也需要在这个task.json文件里(build(g++)部分)的args项中作出更改,将
"${fileDirname}/${fileBasenameNoExtension}.o"
改为
"${workspaceRoot}/${fileBasenameNoExtension}.o"
否则你在调试时编译器会找不到.o文件的,从而无法编译。
3)顺便提一下setting.json文件的配置~
"python.pythonPath": "/usr/bin/python3.6",
"python.linting.pylintEnabled": true,
"python.linting.flake8Enabled": true,
"python.formatting.provider": "yapf",
如果你在.vscode里面没有看到这个文件的话你同样可以touch一个出来,然后加上这几行代码,你就可以顺利的运行Python拉~
你可以通过Ctrl+shift+B来在VScode的终端中直接运行python文件,如上图所示~
最后祝大家能顺利的配置好编译环境,这也是我的第一篇博客哦~希望大家喜欢~
如有欠缺,请多指点指点~