博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
electron 开发环境搭建
阅读量:6305 次
发布时间:2019-06-22

本文共 1492 字,大约阅读时间需要 4 分钟。

electron开发环境的搭建共包括两个部分:一、动态链接库(dll)编译部分;二、Native模块编译部分

tips:cnpm和npm的依赖可能不同,npm安装时可以通过任务管理器查看网速

```
node rebuild(走的是node-gyp)
npm i -g --production window-build-tools

npm i ffi // 这一步可能不止这一个命令

npm i --save-dev node-gyp //这里的node-gyp一定要装在当前项目文件夹下,不能用全局的

npm i ref // 需要装好ffi后再搞

set PYTHON=C:\Users\hongbin.liang\.windows-build-tools\python27\python.exe // 设置python的环境变量(已经被window-build-tools自动装好了)

node_modules\.bin\electron-rebuild //用electron再次编译C、C++等系统接口(ref编译的貌似不行,electron有自己的一套东西)

```
```
npm i electron-packager -g // 用来最后的打包
其他相关:http://note.youdao.com/noteshare?id=7c8bf404c1c03c473a63668f2b16369f&sub=9CC74EE77FA54FA4B658E5C2E984B8A4
```
#### 一、动态链接库(dll)
```
1.安装npm(包含了node环境)

2.再安装 window-build-tools(包含了python环境) :

npm i -g --production window-build-tools // 安装ffi、ref等需要编译的包没有window-build-tools将无法编译通过,另外此包下载较慢

3.安装ffi( 用于将c、c++写的dll编译为node使用的.node为后缀名的dll文件,依赖ref)、ref(用于编译基础文件类型(数组等):

npm i --save ffi / npm i --save-dev ref

```
#### 二、Native模块
```
安装node-gyp和electron-rebuild (项目内安装) npm i --save-dev node-gyp / npm i --save-dev node-gyp
node rebuild(走的是.\node_modules\.bin\node-gyp,通过node index.js 启动应用)和 electron-rebuild (走的是 .\node_modules\.bin\electron-rebuild,通过electron . 启动应用)两种开发互斥,只能二选一

electron-rebuild

```
#### 其他
```
设置python的环境变量 : set PYTHON=C:\Users\hongbin.liang\.windows-build-tools\python27\python.exe

npm i 依赖git(是通过packge.json文件中的文件名去github上检索下载安装的,走的是git,cmd如果不支持,可能是因为安装git时没有去设置,建议重装git,注意安装选项)

```

转载于:https://www.cnblogs.com/keepLeung/p/8530687.html

你可能感兴趣的文章
Git 2.5增加了工作树、改进了三角工作流、性能等诸多方面
查看>>
Swift 5将强制执行内存独占访问
查看>>
中台之上(二):为什么业务架构存在20多年,技术人员还觉得它有点虚?
查看>>
深度揭秘腾讯云低功耗广域物联网LPWAN 技术及应用
查看>>
与Jeff Sutherland谈敏捷领导力
查看>>
More than React(四)HTML也可以静态编译?
查看>>
React Native最佳学习模版- F8 App开源了
查看>>
云服务正在吞噬世界!
查看>>
阅读Android源码的一些姿势
查看>>
Web语义化标准解读
查看>>
一份代码构建移动、桌面、Web全平台应用
查看>>
高性能 Lua 技巧(译)
查看>>
区分指针、变量名、指针所指向的内存
查看>>
异步编程的世界
查看>>
最近话题火爆的四件事你知道不?
查看>>
SpringBoot整合MyBatis
查看>>
云计算产业如何率先推行信用管理?
查看>>
Android 类库书签更新(一)
查看>>
Unity3D Input按键系统
查看>>
简单的一条SQL,不简单的做事思维 NOT IN 、NOT EXISTS、LEFT JOIN用法差别 ...
查看>>