当前位置: 首页 > news >正文

运行vscode编辑器源码

距离上次二次开发vscode已经是三年前的事了,当时是1.60.0版本,目前vscode已升级到了1.99.2版本,里面改动很大,最近下载下来了新版源码跑起来看看

准备node、python

源码里面node版本做了限制

'2025-01-27 09:53:00.450 [info] Found with version <20.18.1>','Now using node v20.18.1 (npm v10.8.2)','','> husky - npm run -s precommit','> husky - node v20.18.1','','Reading git index versions...'

首先把node升级到20.18.1, npm版本升级到10.8.2,我的Python把目前的3.9d的版本,建议安装setuptools包(pip install setuptools),最好按照vscode版本中给到的对应版本进行安装

安装下 node-gyp

node-gyp 是一个构建工具,用于编译 Node.js 原生模块


npm install -g node-gyp

windows

VSCode的编译过程需要C++的构建工具

Windows 10/11(x64 或 ARM64)

通过安装Visual Studio 构建工具(官网自行下载)或Visual Studio 社区版来安装 Visual C++ 构建环境。最低安装工作量为Desktop Development with C++。但“单个组件”中还有其他组件:

  • MSVC v143 - VS 2022 C++ x64/x86 Spectre-mitigated libs (Latest)(用于ARM64ARM 上的 Windows,但可能仍然需要 x64/x86)
  • C++ ATL for latest build tools with Spectre Mitigations
  • C++ MFC for latest build tools with Spectre Mitigations
  • 打开命令提示符并运行,npm config edit然后添加或修改msvs_version与您的 vs 版本相同的设置。(例如,msvs_version=2022对于 Visual Studio 2022)

警告:确保您的配置文件路径仅包含 ASCII 字母,例如John,否则可能会导致node-gyp 使用问题 (nodejs/node-gyp/issues#297)

注意:目前不支持通过 Windows 的 Linux 子系统 (WSL) 进行构建和调试。

在这里插入图片描述
在visual studio里选工具,点击获取工具

在这里插入图片描述
我这边安装好c++环境之后还是报错
VS2022提示MSB8040 此项目需要缓解了 Spectre 漏洞的库解决方法

在这里插入图片描述
我的解决方式是在单组件搜索Spectre,选择最新版本

mac

  • Xcode和命令行工具,将安装gcc包含的相关工具链make
    • 运行xcode-select --install安装命令行工具

mac需要安装xcode,十几个G大小

xcode历史版本列表
https://developer.apple.com/download/all/?q=xcode
按照对应电脑版本去下载

问题:版本冲突或依赖错误

有时,npm install 可能会因为某些依赖版本冲突而失败。解决方法可以尝试以下命令清空缓存并重新安装:

npm cache clean --force
npm install

如果提示没有找到对应依赖版本
通过

npm view @xx/xxx versions

查看现有版本然后改下依赖的版本重新安装

祝兄弟萌在开发路上一帆风顺

http://www.xdnf.cn/news/520453.html

相关文章:

  • 课外活动:再次理解页面实例化PO对象的魔法方法__getattr__
  • 【免杀】C2免杀技术(五)动态API
  • C2S-Scale方法解读
  • [Android] 青木扫描全能文档3.0,支持自动扫描功能
  • 机器学习入门之朴素叶贝斯和决策树分类(四)
  • 【VMware】开启「共享文件夹」
  • 计算机系统的工作原理
  • 2.2.5
  • 进程间通信--信号量【Linux操作系统】
  • leetcode解题思路分析(一百六十四)1418 - 1424 题
  • [论文品鉴] DeepSeek V3 最新论文 之 MHA、MQA、GQA、MLA
  • 进程状态并详解S和D状态
  • C++学习:六个月从基础到就业——C++17:结构化绑定
  • 什么是dom?作用是什么
  • 产品周围的几面墙
  • C++高级用法--绑定器和函数对象
  • 垂直智能体:企业AI落地的正确打开方式
  • [人月神话_6] 另外一面 | 一页流程图 | 没有银弹
  • 三:操作系统线程管理之用户级线程与内核级线程
  • 大模型应用开发工程师
  • 从逻辑学视角探析证据学的理论框架与应用体系;《证据学》大纲参考
  • Java学习手册:服务熔断与降级
  • 朴素贝叶斯
  • 做什么, what to do?
  • 面试题总结二
  • atcoder C - ~
  • EmuEdit
  • 网页 H5 微应用接入钉钉自动登录
  • python29
  • 【从基础到模型网络】深度学习-语义分割-ROI