文章目录
VS
安装vscode
sudo apt update
sudo apt install software-properties-common apt-transport-https wget
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
sudo apt install code
ubuntu和window快捷键不一样
安装扩展
Windows default keybindings
remote-ssh
- 确保ubuntu的SSH可用
- 安装VS code的remote-ssh插件
- 点击+,输入ssh ubuntu-username@ubuntu-ip,扩展配置remote-ssh中选择C盘下的config文件,保持默认。完成
- ssh 连接免密码:
bash
# 如果没有rsa公私钥
# ssh-keygen -t rsa
# git bash 下输入
ssh-copy-id -i ~/.ssh/id_rsa.pub eden@192.168.126.128
Remote SSH的config文件下连接中添加生成的rsa的路径,就行了
bash
Host 192.168.47.136
HostName 192.168.47.136
User eden
IdentityFile C:\Users\eden.lu\.ssh\id_rsa
如果找不到rsa的话,,需要修改windows上git的HOME变量为C:\Users\eden.lu\.ssh
,重新生成rsa
bash
setx HOME "C:\Users\eden.lu\.ssh"
使用vscode查看linux内核源码
在windows上使用vscode查看在虚拟机上的内核源码,需要安装:
- remote SSH
- Clangd(windows和ubuntu):vscode上的一个查阅代码的智能工具(需要有
compile_commands.json
文件才能正确索引) - bear(ubuntu):编译时生成
compile_commands.json
文件
在windows的vscode上安装插件Clangd,远程也需要。(因为网络不能下载的,可以挂个VPN)
在clangd设置中增加iterm(每个iterm一条):
bash
--compile-commands-dir=${workspaceFolder}
--background-index
--completion-style=detailed
--header-insertion=never
-log=info
编译kernel时需要在命令前加上bear --
如:bear -- make zImage -j4
将编译生产的compile_commands.json
文件所在目录作为vscode工作目录,即可正常使用代码索引功能。
打开vscode的output窗口,ctrl+shift+p执行
clangd:restart language server
重启clangd
使用vi查看linux内核源码
ctags -R
ctrl+]
:跳转定义
g ctrl+]
:体系可选的跳转定义
ctrl+o
:返回
在linux上的vscode使用clangd
在vscode安装clangd插件后还需要安装clangd server
下载最新的clangd
解压后,
将bin文件夹下的 clangd 移动到 /usr/bin 目录下,
将lib文件夹下的所有移动到 /usr/local/lib 目录下。
clangd --version
打开内核源码目录,删除原有的.cache文件夹,在compile_commands.json
文件所在目录打开vscode,然后打开一个c文件,等待clangd索引完成。
vscode资源管理器字体大小设置
Zoom level
设置项,可选为0/1