在Windows平台上从源码编译vscode

操作前须知

  • 如果你只是不想被微软遥测,想用纯净的vscode,那么你可以直接下载vscodium,不必折腾
  • 如果编译出现问题,请先看官方文档里有没有写
  • 我使用的是Windows Terminal中的普通命令行,因为powershell运行yarn好像有问题,所以我没有用
  • 编译过程中内存占用可能高达12GB,我看输出,有可能可以手动设置(--max-old-space-size),但我没有尝试,如果你的内存不够,请做好准备
  • 编译的缓存文件比较多,最好用固态硬盘,可以快不少

参考:
官方文档
https://www.bilibili.com/video/BV1At4y1r7uQ/
https://www.youtube.com/watch?v=ISZja8tKR9Q
https://blog.csdn.net/xiaoxiezZ/article/details/103062971
https://www.jianshu.com/p/318629e3197f

0.准备工具
注意:各工具的版本要求写在官方文档里,应该是在不断更新的,注意检查版本

  • git
  • node.js
  • python
  • npm(已经和node.js一起安装好了)
  • yarn(运行npm install --global yarn

1.下载源码

  • git clone https://github.com/microsoft/vscode.git
  • 或者可以下载源码压缩包,然后手动解压
    注意:源码文件夹路径最好只有ASCII字符

2.编译

  • 进入源码文件夹,打开命令行
  • 运行yarn 这一步时间较长,我用了几十分钟,而且会下载大量文件,连接不上的可以试试魔法
  • 运行yarn run gulp vscode-win32-x64-min 这一步时间很长,我这里大概是这样,CPU的一个核心占满,内存占用不断上升,16g内存大概用了12g,硬盘一直在读写。然后突然停在Starting compilation...上,CPU单核仍然占满,但是硬盘不动了。其实这是正常的,真的要等半小时

3.完成

  • 源码目录的上一级会出现一个VSCode-win32-x64文件夹,里面的Code - OSS.exe就是vscode程序

4.各种问题

  • 提示Invalid C/C++ Compiler Toolchain. :这是找不到你的c++编译器了,编译vscode好像必须用msvc,最简单的方法是按照官方文档安装独立编译器。编译vscode时它只会检查C:\Program Files\Microsoft Visual Studio下面有没有编译器,所以你如果把visual studio安装在了别的目录也没用。在<源码目录>\build\npm\preinstall.js的44和59行可以看到检查编译器位置的规则,如果你的visual studio在其他目录,可以根据这个规则mklink进行链接来解决C:\Program Files\Microsoft Visual Studio\2022\Community对应的是按照visual studio时的IDE目录
  • 出现MSB8040:参考官方文档,在visual studio里面安装3个单个组件
  • 提示Not a git repository:可能是因为你没有clone仓库,没有.git文件夹,我直接把<源码目录>\build\npm\postinstall.js的最后两行注释掉了
  • 提示There is no Windows 10 SDK installed at:这是找不到你的Windows Kits,它好像只会查找默认安装位置的,可以直接修改报错的文件里的查找路径,也可以用mklink链接你的kits
  • 提示Error: Request https://api.github.com/repos/microsoft/vscode-js-debug-companion/releases/tags/v1.1.2 failed with status code: 403 (you may be rate limited):这是纯网络问题,github访问不稳定,上午到下午成功率比较高,或者用魔法也行
  • 出现yarn install failed :vscode-ripgrep: Command failed.:删除C:\Users\<用户名>\AppData\Local\Temp\vscode-ripgrep-cache-1.2.4

5.关于编译后的打包和运行

  • 如果你只需要测试vscode,可以在运行yarn之后,在源码目录下运行yarn watch,然后会停在一个地方一直不动(我忘了记录了),不要关闭命令行,在源码目录下再开一个命令行,运行.\scripts\code.bat,就可以启动vscode了
  • 前面运行yarn run gulp vscode-win32-x64-min其实是打包,主要是从简书那篇文章里面学的,看那个就懂了
  • 打包后运行Code - OSS.exe提示Cannot find module 'minimist':我也不清楚怎么回事,重新下载源码再编译一次就好了
posted @   elight2  阅读(226)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示