windows下electron安装node原生模块(sqlite3)--踩坑记录


声明:本文转载自https://my.oschina.net/dtdths/blog/1614712,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

比写不出代码更恶心的,是环境配置出问题,写好的代码运行不了。widows下electron中直接安装sqlite3,调用的时候会提示找不到sqlite模块。看似简单,却没有一点提示,国内网上资料残缺不全,大多互相复制。卡了接近一星期,百度谷歌翻到烂。今天终于编译成功,遂记录此过程,望能给他人一些解决思路。

安装步骤

1.安装vs2015!

vs2015中包含编译用的c++环境

ed2k://|file|cn_visual_studio_community_2015_x86_dvd_6847368.iso|4013920256|EB7F6605EDE67509E218E29173AC6574|/

此为Visual Studio Community 2015中文版。把c++相关的安装上。安装完毕后,打开vs2015--》文件--》新建--》项目

选择c++空白模板,如果环境未安装完全,则会提示安装剩余部分,全装上!!

2.python 2.7

python官网上下载。一定要是2.7的,3.X的不支持。

安装时记得勾选设置环境变量。

3.安装cnpm

墙裂推荐cnpm,避免各种ETIMEOUT,有时候不是设置下换源就能解决的

4.安装sqlite3

前戏结束,进入正题。首先,确认当前electron版本

"scripts": {      ...     "ev": "electron --version"  }

运行electron --version命令,为了省事我把其添加进package.json中了,npm run ev使用。

我的版本是1.7.11

运行

 cnpm install sqlite3@latest --build-from-source --runtime=electron --target=1.7.11 --dist-url=https://atom.io/download/electron --save

注意target后是你当前electron的版本号

基本操作到这里就完成了。接下来就是祈祷然后等待(2~3mins)。运气好的话通过,不好的话就会满屏error。

常见错误记录

以下是我遇到的各种错误,当时没有截图,现在只能描述。暂时只想起了这些

  1. node-gyp安装,这个较简单,注意windows下需要提前安装好环境(vs2015)
  2. 注意看错误提示,在最开始的地方有时会提示说找不到python,需要设置环境变量  可是尼玛我环境变量就在上面写着啊!我也是醉了。怎么设置都不行。最后python卸载重装,不报这个错了。(如果python有多个版本,需要设置版本,详情搜node-gyp包)
  3. 报错  #npm install# MSBUILD : error MSB4132: 无法识别工具版本“2.0”。可用的工具版本为 "4.0"。啥也别说了,去装vs2015吧。
  4. 报错 fatal error C1083: 无法打开包括文件: “node.h”这个错误竟然是因为系统用户名必须要ASCII码的,我tm当时手贱写了个中文用户名,卡了我一晚上。

参考

遇到了两篇较为有参考价值的博客,给我提供了很大的参考

  1. 一个使用electron-vue模板的项目,但是按照其安装sqlite3失败了https://segmentfault.com/a/1190000010740918
  2. sqlite3的安装与使用,我所使用的方法是按照此文章中完成的,但是其对安装失败的过程一笔带过,我算是一种踩坑后的补全吧  https://newsn.net/say/electron-install-sqlite3.html

 

一星期的煎熬之后总算把这个坑解决了。不过我已经预感到打包时会有更大的坑出现了。每天都是瞎折腾,烦躁

 

 

 

本文发表于2018年01月29日 08:38
(c)注:本文转载自https://my.oschina.net/dtdths/blog/1614712,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 2912 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1