linux下使用vscode代替vitis是很简单的,如果有需要,就参考
现在我们只讨论Windows下如何使用vscode代替vitis。
首先确保你安装了vitis环境,并且应用工程先在vitis中成功编译过一次。
然后就可以关闭vitis了。
vitis安装目录下的一些工具是vscode中编译需要用到的,需要将工具的路径添加到Windows环境变量中。
1.windows中添加如图所示的2个环境变量,不用重启
2.在windows power shell中
使用make -v来确认环境正确性
目的是确定make是从环境变量二中获得的
如果你事先安装了GNU make,并设置了环境变量,请将它删除。
3.使用vscode打开原本的vitis工作空间文件夹
在其中新建.vscode文件夹,在.vscode文件夹中新建tasks.json文件,并输入如下内容
{
"version": "2.0.0",
"tasks": [
// 使用make编译rf4_link4a11_app工程
{
"label": "build rf4_link4a11_app with makefile",
"type": "shell",
"command": "make",
"args": [
"-j22", // 按实际情况修改,-j20选项必须加在-C选项的前面,否则报错
// "-g",
"-C",
"${workspaceFolder}/rf4_link4a11_app/Debug", // 确保路径正确指向 makefile 所在的目录
"all"
],
"group": {
"kind": "build",
"isDefault": true
},
"problemMatcher": ["$gcc"], // 假设你的 makefile 使用 GCC,这个 matcher 可以帮助识别编译错误
"options": {
"cwd": "${workspaceFolder}/rf4_link4a11_app/Debug" // 设置工作目录为 makefile 所在的目录(可选,但通常有用)
}
},
{
"label": "clean rf4_link4a11_app with makefile",
"type": "shell",
"command": "make",
"args": [
"-C",
"${workspaceFolder}/rf4_link4a11_app/Debug",
"clean"
],
"problemMatcher": [],
"options": {
"cwd": "${workspaceFolder}/rf4_link4a11_app/Debug" // 同样,设置工作目录为 makefile 所在的目录(可选)
}
}
]
}
这是我的工程目录结构,可以参考一下
打开用户按键映射配置文件C:\Users\$username\AppData\Roaming\Code\User\keybindings.json
修改成我这样
// 将键绑定放在此文件中以覆盖默认值
[
// {
// "key": "ctrl+b",
// "command": "-supercollider.bootServer",
// "when": "config.scvsc.useScideKeybindings && editorTextFocus"
// },
// {
// "key": "ctrl+b",
// "command": "-workbench.action.toggleSidebarVisibility"
// }
{
"key": "ctrl+b",
"command": "workbench.action.tasks.runTask",
"args": "build rf4_link4a11_app with makefile",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+b",
"command": "workbench.action.tasks.runTask",
"args": "clean rf4_link4a11_app with makefile",
"when": "editorTextFocus"
}
]
大家按自己的工程名来修改不一致的地方
4.编译应用工程
现在,使用CTRL+B可以编译应用工程,使用CTRL+SHIFT+B可以clean应用工程。
PS:如果编译有问题,请重新建vitis工程再试
补充:这个方法中,如果你要在vscode中添加新的.c和.h文件,那就需要在vitis中再编译一次,否则直接在vscode中 编译会报错。
如果需要使用gdb调试,请参考我的另一篇文章:《vscode代替vitis方法》