JSRUN 用代码说话

构建步骤 (Windows)

编辑教程

构建步骤 (Windows)

遵循下面的引导,在 Windows 上构建 Electron .

前提

如果你现在还没有安装 Windows ,modern.ie有一个 timebombed 版本的 Windows ,你可以用它来构建 Electron.

构建 Electron 完全的依赖于命令行,并且不可通过 Visual Studio. 可以使用任何的编辑器来开发 Electron ,未来会支持 Visual Studio.

注意:虽然 Visual Studio 不是用来构建的,但是它仍然必须的,因为我们需要它提供的构建工具栏.

注意:Visual Studio 2015 不可用. 请确定使用 MSVS2013.

获取代码

$ git clone https://github.com/electron/electron.git

Bootstrapping

bootstrap 脚本也是必要下载的构建依赖,来创建项目文件.注意我们使用的是ninja来构建 Electron,所以没有生成 Visual Studio 项目.

$ cd electron
$ python script\bootstrap.py -v

构建

创建Release、Debugtarget:

$ python script\build.py

可以只创建Debugtarget:

$ python script\build.py -c D

创建完毕, 可以在out/D(debug target) 或out\R(release target) 下面找到electron.exe.

64bit Build

为了构建64位的 target,在运行 bootstrap 脚本的时候需要使用--target_arch=x64:

$ python script\bootstrap.py -v --target_arch=x64

其他构建步骤完全相同.

Tests

测试你的修改是否符合项目代码风格,使用:

$ python script\cpplint.py

测试有效性使用:

$ python script\test.py

在构建 debug 时为 Tests包含原生模块 (例如runas) 将不会执行, 但是它们在构建 release 会起效.

运行 release 构建使用 :

$ python script\test.py -R

解决问题

Command xxxx not found

如果你遇到了一个错误,类似Command xxxx not found, 可以尝试使用VS2012 Command Prompt控制台来执行构建脚本 .

Fatal internal compiler error: C1001

确保你已经安装了 Visual Studio 的最新安装包 .

Assertion failed: ((handle))->activecnt >= 0

如果在 Cygwin 下构建的,你可能会看到bootstrap.py失败并且附带下面错误 :

Assertion failed: ((handle))->activecnt >= 0, file src\win\pipe.c, line 1430

Traceback (most recent call last):
  File "script/bootstrap.py", line 87, in <module>
    sys.exit(main())
  File "script/bootstrap.py", line 22, in main
    update_node_modules('.')
  File "script/bootstrap.py", line 56, in update_node_modules
    execute([NPM, 'install'])
  File "/home/zcbenz/codes/raven/script/lib/util.py", line 118, in execute
    raise e
subprocess.CalledProcessError: Command '['npm.cmd', 'install']' returned non-zero exit status 3

这是由同时使用 Cygwin Python 和 Win32 Node 造成的 bug.解决办法就是使用 Win32 Python 执行 bootstrap 脚本 (假定你已经在目录C:\Python27下安装了 Python):

$ /cygdrive/c/Python27/python.exe script/bootstrap.py

LNK1181: cannot open input file 'kernel32.lib'

重新安装 32位的 Node.js.

Error: ENOENT, stat 'C:\Users\USERNAME\AppData\Roaming\npm'

简单创建目录 应该可以解决问题

$ mkdir ~\AppData\Roaming\npm

node-gyp is not recognized as an internal or external command

如果你使用 Git Bash 来构建,或许会遇到这个错误,可以使用 PowerShell 或 VS2012 Command Prompt 来代替 .

JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
金额: 0
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟