平时大家所使用的electron,是已经预编译好的。但是一些特殊情况下,是需要对electron的源码重新编译,以添加新的功能的。比如sqlite或者ffi等功能。这些功能的添加,都会触发electron的重新编译,进而需要设置一些参数。编译参数的正确设置,会影响到最终的编译结果。

苏南大叔:重建electron,node-gyp常用参数详解大全 - node-gyp-params
重建electron,node-gyp常用参数详解大全(图4-1)

本文的关键词是:node-gyp,但是可能存在着一些变形命令。但是,无论如何,最终一定会向命令行里面,传递这些参数:dist-url/arch/target/python/msvs_version

本文测试环境:win10/node@10.15.1/node-gyp@3.8.0/electron@1.7.11

因为node-gyp的正确执行,是需要正确安装python@2.7c++@2015的。这个是所有一切操作的基础前提,所以,这里苏南大叔还是建议您:先查看一下下面的这个前置的环境安装篇的内容:

--dist-url

参数--dist-url指的是下载header tarball的地方,这个标准答案是:

--dist-url=https://atom.io/download/electron

但是这个标准答案中的url,在国内是很难访问到的。所以,需要替换成国内的淘宝镜像地址:

--dist-url=https://npm.taobao.org/mirrors/atom-shell

苏南大叔:重建electron,node-gyp常用参数详解大全 - taobao-mirror
重建electron,node-gyp常用参数详解大全(图4-2)

苏南的大叔找到了2个淘宝的npm镜像地址:

上述两个地址中,看上去第一条/mirrors/electron和标准答案最接近。但实际上,后面的/mirrors/atom-shell才是正确答案。

更多参数

这里重建electron的方式方案很多,但是都包含着上述几个参数。那么,请重点注意好这几个参数,就可以了。如果您还使用了其他参数,可以点击这么这个连接,查看更详细的说明:

苏南大叔:重建electron,node-gyp常用参数详解大全 - gyp-command
重建electron,node-gyp常用参数详解大全(图4-4)

结语

更多node-gyp的经验文字,请点击苏南大叔的博客文章:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接作者。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

 【加群】加入QQ群【175454274】和大家一起讨论这个问题

 【源码】本文代码片段及相关软件,请点此获取

 【绝密】秘籍文章入口,仅传授于有缘之人   electron    gyp

本站的忠实读者小伙伴,正在阅读下面这些文章: