Electron开发安装better-sqlite3环境准备(windows)

-----废话不多说,直接上干货

环境装备

  1. 安装 nvm (node 版本管理工具)
  2. 安装 node
shell 复制代码
nvm list available

|   CURRENT    |     LTS      |  OLD STABLE  | OLD UNSTABLE |
|--------------|--------------|--------------|--------------|
|    22.0.0    |   20.12.2    |   0.12.18    |   0.11.16    |
|    21.7.3    |   20.12.1    |   0.12.17    |   0.11.15    |
|    21.7.2    |   20.12.0    |   0.12.16    |   0.11.14    |
|    21.7.1    |   20.11.1    |   0.12.15    |   0.11.13    |
|    21.7.0    |   20.11.0    |   0.12.14    |   0.11.12    |
|    21.6.2    |   20.10.0    |   0.12.13    |   0.11.11    |
|    21.6.1    |    20.9.0    |   0.12.12    |   0.11.10    |
|    21.6.0    |   18.20.2    |   0.12.11    |    0.11.9    |
|    21.5.0    |   18.20.1    |   0.12.10    |    0.11.8    |
|    21.4.0    |   18.20.0    |    0.12.9    |    0.11.7    |
|    21.3.0    |   18.19.1    |    0.12.8    |    0.11.6    |
|    21.2.0    |   18.19.0    |    0.12.7    |    0.11.5    |
|    21.1.0    |   18.18.2    |    0.12.6    |    0.11.4    |
|    21.0.0    |   18.18.1    |    0.12.5    |    0.11.3    |
|    20.8.1    |   18.18.0    |    0.12.4    |    0.11.2    |
|    20.8.0    |   18.17.1    |    0.12.3    |    0.11.1    |
|    20.7.0    |   18.17.0    |    0.12.2    |    0.11.0    |
|    20.6.1    |   18.16.1    |    0.12.1    |    0.9.12    |
|    20.6.0    |   18.16.0    |    0.12.0    |    0.9.11    |
|    20.5.1    |   18.15.0    |   0.10.48    |    0.9.10    |
 
 nvm install {version}
 
 nvm on
 
 nvm use {version}
  1. 初始化 node 编译环境
    • cd %NVM_SYMLINK% 或者 cd C:\Program Files\nodejs
    • 双击 install_tools.bat(此过程会打开 powershell 等待 install 成功)
  2. 安装 node-gyp
shell 复制代码
npm install -g node-gyp
  1. 安装 pnpm (根据自己项目是否需要,选择安装, 以下都是以 pnpm 角度解决问题)
shell 复制代码
npm install -g pnpm
  1. 安装 better-sqlite3
shell 复制代码
pnpm add better-sqlite3 --save -w  或者 npm install better-sqlite3 --save

已知错误

windows

《问题 一》执行上述步骤 2 时, 会安装 python 最新版本

  • node-gyp version <= 10.1.0 依赖了 python 标准库中的 distutils 包;
  • distutils 在 python version >= 3.10.* 版本中移除了 distutils 包
  • pip 中目前(2021-4-28)没有改包

综上 解决方案: 降低 python 版本

《问题 二》

  • 执行上述步骤 2 时,需要网络畅通;
  • 如果执行失败
  • 删除 C:\ProgramData\chocolatey 及 C:\ProgramData\ChocolateyHttpCache 两个目录;
  • 重新 执行步骤 2
  • 待出现 EXIT log时,代表成功。 此时 powershell 并不会自动关闭。

pnpm 已知问题

  • 如果是 nvm 安装的 node, 则 打开 %NVM_HOME%\v${version}\node_modules\pnpm\bin\pnpm.cjs
  • 将 第一行 #!/usr/bin/env node 替换 为 #!node
相关推荐
J***Q29210 小时前
Vue数据可视化
前端·vue.js·信息可视化
ttod_qzstudio12 小时前
深入理解 Vue 3 的 h 函数:构建动态 UI 的利器
前端·vue.js
_大龄12 小时前
前端解析excel
前端·excel
槁***耿12 小时前
JavaScript在Node.js中的事件发射器
开发语言·javascript·node.js
一叶茶12 小时前
移动端平板打开的三种模式。
前端·javascript
前端大卫12 小时前
一文搞懂 Webpack 分包:async、initial 与 all 的区别【附源码】
前端
U***498313 小时前
JavaScript在Node.js中的Strapi
开发语言·javascript·node.js
Want59513 小时前
HTML音乐圣诞树
前端·html
老前端的功夫13 小时前
前端浏览器缓存深度解析:从网络请求到极致性能优化
前端·javascript·网络·缓存·性能优化
Running_slave14 小时前
你应该了解的TCP滑窗
前端·网络协议·tcp/ip