站点图标 独书先生

VSCode 源码学习(1):本地运行

VSCode 源码学习(1):本地运行

背景

最近项目架构参考 vscode,准备学习一下 vscode 的源码。第一步就是先跑起来。

操作步骤基本上是参考官方贡献文档来的

VSCode: How to Contribute

这里提炼一些关键步骤。如有不对,请多参考官方文档。

步骤

因为 vscode 编译会用 node-gyp,node-gyp 在 windows 中安装会比较麻烦,所以我的计划是在 WSL 中运行。

  1. 环境准备

    确保你的 WSL 中已经安装好了 git、nodejs、yarn、Python、C++编译工具链

  1. 安装依赖

    yarn
    

  2. 启动 electron

    ./scripts/code.sh --no-sandbox
    

    第一次执行比较慢,多等待一会,大概 2 分钟后就能启动了。

报错

执行./scripts/code.sh报错

可能是刚开始没有安装 C++工具链,执行./scripts/code.sh报了一些错误

找不到 ternary-stream 模块

Error: Cannot find module 'ternary-stream'

找不到 vscode-gulp-watch 模块

Error: Cannot find module 'vscode-gulp-watch'

gssapi.h 错误

../src/unix/kerberos_gss.h:21:14: fatal error: gssapi/gssapi.h: No such file or directory

基本上安装好 C++依赖就没有了。

yarn 安装依赖的时候报 gyp 错误

还有一个常见的 node-gyp 错误

/bin/sh: 1: pkg-config: not found
gyp: Call to 'pkg-config --cflags libsecret-1' returned exit status 127 while in binding.gyp. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1

我尝试清除依赖后重新安装依赖就好了

# 清除依赖
git clean -xfd
# 重新安装依赖
yarn

提示not a valid Electron app

这是官方提醒的报错,注意一下就行,需要执行

yarn watch

参考

退出移动版