VSCode源码编译过程(windows10 64bit环境)

本文详细介绍了如何从源代码编译VSCode,包括所需软件及其版本的选择与安装、环境变量的配置、依赖库的安装及编译过程中的常见问题解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

编译VSCode是出于学习的目的

主要参照的文档是Microsoft的github中文档

https://github.com/Microsoft/vscode/wiki/How-to-Contribute#build-and-run-from-source

 

说一点点

VSCode是基于Electron开发的,这是个开发桌面程序很有意思的一个东西,具体可以看看源码分析

http://ju.outofmemory.cn/entry/345080

 

实际上VSCode是使用了很多软件集合的

编译VSCode,我们需要做些准备工作,下载软件都要看看最近的VSCode需求,可以参照我下面的版本

git

node.js

yarn

python

C/C++ compiler tool chain 

 

git不说了,自己去安装吧

node.js

我参照的是这哥们的https://www.cnblogs.com/zhouyu2017/p/6485265.html

这里说一点,或许是因为VSCode只能编译成32位(个人理解),我这下载的是32位

官网上下载https://nodejs.org/en/download/

node-v8.11.3-x86.msi

按照那哥们的文章配置环境变量就好

 

yarn

我这里是直接用npm安装的

npm install -g yarn

安装完毕后,测试

yarn -v

 

python

官网上下载https://www.python.org/downloads/release/python-2715/

python-2.7.15.msi,这里我下载的也是32位的,原因同上,不然有可能后面跑不起来

安装过程中,直接把环境变量也勾选上

安装完毕后,

Set a PYTHON environment variable pointing to your python.exe. Eg: C:\Python27\python.exe

需要添加PYTHON环境变量到你的python.exe绝对路径

 

C/C++ compiler tool chain

这个见仁见智,可以直接安装VS2015,VS2017编译似乎会有些问题

我这直接安装的是Windows Build Tools npm module

参照官网https://github.com/felixrieseberg/windows-build-tools

我这直接使用命令

npm install --global --production windows-build-tools

没出什么错误

 

软件的安装最好按照我上面的顺序,不然有可能出现些问题

到此,软件的准备过程就完毕了

 

现在开始干活了

直接clone一份代码出来

git clone https://github.com/Microsoft/vscode.git

 

在cmd终端

cd vscode 

执行,设置环境变量

set npm_config_arch=ia32

set npm_config_target=ia32

另外说一点,可以用npm config ls -l 查看配置,这两个配置是我摸索出来的,另外是当前cmd有效的,不是全局的,下次需要重新设置,npm config设置,可以自己百度用用

执行安装依赖库,这个时间会有些久

yarn

这个命令,出现的问题,主要是32位问题,或者是c++编译问题,以及443端口问题

我这出现的是这些,32位注意前面的指令需要配置,以及软件用32位的,c++编译不想安装VS2015就用Windows Build Tools npm module,443问题,可以netstat -aon|findstr 443 然后看看杀掉之类的,或者考虑重启电脑吧

 

编译,下面这命令也会比较久

yarn run watch

如上图,最后的打印表示成功了,会一直停在这界面,我的理解是在监听

 

然后,另外起一个cmd终端

cd vscode

set npm_config_arch=ia32

set npm_config_target=ia32

.\scripts\code.bat (这个时间也会有些久,有时可能还会down掉,猜测可能是下载源的问题,我就关闭后,重新来过,就可以了,可以看看是不是需要换源,如,很多用某宝的)

最后就可以看见画面了

感觉这种技术,也是可以学习研究的

目前只是编译执行,都好了,具体的技术问题还有待研究

本人才疏学浅,如有说错的地方,麻烦指出

谢谢

### 配置和编译32-bit EXE文件 为了在 Visual Studio Code (VSCode) 中成功编译32位的可执行文件,需确保已安装适当版本的 MinGW-w64 编译器,并正确设置环境变量以便调用 `mingw32-make` 或者简化后的 `make` 命令来构建项目。 #### 设置MinGW-w64编译器 选择适用于Windows平台上的MinGW-w64工具链作为GCC编译器[^1]。对于目标架构为i686(即32位),应特别关注下载页面中的相应选项以获取适合该体系结构的支持包。 #### 修改Make命令名称 考虑到用户体验的一致性和简便性,建议将默认提供的较长命名形式——`mingw32-make.exe` 复制一份副本并重命名为更简洁易记的形式如 `make.exe` 。这一步骤并非强制性的,但如果进行了这样的处理,则可以在后续配置过程中直接使用简单的 `make` 关键字代替完整的 `mingw32-make` 来触发构建过程[^2]。 #### 创建与辑项目的 Makefile 针对具体的应用场景写合适的 Makefile 是至关重要的。此文件定义了源码目录结构、依赖关系以及最终生成的目标文件等信息。当一切准备就绪之后,通过运行 `make` 即可根据这些指令自动完成整个编译流程。 #### 调整 VSCode 的任务配置 为了让VSCode能够识别到外部构建工具的存在及其工作方式,需要调整IDE内部的任务管理机制。通常情况下这意味着要修改位于 `.vscode/tasks.json` 文件内的条目,使之指向正确的构建脚本路径: ```json { "version": "2.0.0", "tasks": [ { "label": "build", "type": "shell", "command": "${workspaceFolder}/path/to/make", // 如果已经改名为 make 则只需写 make "group": { "kind": "build", "isDefault": true }, "problemMatcher": ["$gcc"], "detail": "Generated task to run the build process." } ] } ``` 上述JSON片段展示了如何指定一个名为 “build”的任务去调用系统的 `make` 工具来进行实际的编译作业。请注意这里的 `"command"` 字段应当依据实际情况填写绝对路径或者是相对路径下的命令字符串。 #### 测试编译成果 最后,在完成了以上所有的准备工作以后就可以尝试启动一次完整的编译周期来看是否能顺利产出预期的结果 —— 也就是一个有效的32位 Windows 可移植执行体(.exe)
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值