×

Electron 教程

Electron 教程简介Electron 快速入门Electron 桌面环境集成Electron 在线/离线事件探测Electron 进程支持的 Chrome 命令行开关Electron 环境变量Electron 支持的平台Electron 应用部署Mac App Store 应用提交向导Electron 应用打包Electron 使用原生模块Electron 主进程调试使用 Selenium 和 WebDriverElectron DevTools扩展使用 Pepper Flash 插件使用 Widevine CDM 插件Electron 术语表Electron 离屏渲染Electron 交互式解释器 (REPL)Electron 自动更新功能autoUpdater

Electron API

Electron DOM File对象Electron DOM <webview>Electron window.open 函数

在主进程内可用的模块

Electron app 模块Electron autoUpdater 模块Electron BrowserWindow 模块Electron contentTracing 模块Electron dialog 模块Electron global-shortcut 模块Electron ipcMain 模块Electron menu 模块Electron MenuItem 模块Electron powerMonitor 模块Electron powerSaveBlockerElectron protocol 模块Electron session 模块Electron webContents 模块Electron Tray 模块Electron Locales

在渲染进程(网页)可用模块

Electron desktopCapturer模块Electron ipcRenderer 模块Electron remote 模块Electron webFrame 模块

两种进程都可用的模块

Electron clipboard 模块Electron crashReporter 模块Electron nativeImage 模块Electron screen 模块Electron shell 模块

Electron 开发

Electron 编码规范Electron 源码目录结构Electron 和 NW.js技术上的差异Electron 构建系统概览Electron 构建步骤 (OS X)Electron 构建步骤 (Windows)Electron 构建步骤 (Linux)调试中使用 Symbol ServerElectron 常见问题Electron 版本管理electron window 提交指南自动化持续集成系统(CI)测试Electron 文档风格指南

Electron 构建步骤 (Linux)


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

Prerequisites

  • Python 2.7.x. 一些发行版如 CentOS 仍然使用 Python 2.6.x ,所以或许需要 check 你的 Python 版本,使用 python -V.
  • Node.js v0.12.x. 有很多方法来安装 Node. 可以从 Node.js下载原文件并且编译它 .也可以作为一个标准的用户在 home 目录下安装 node .或者尝试使用仓库 NodeSource.
  • Clang 3.4 或更新的版本.
  • GTK+开发头文件和libnotify.

在 Ubuntu, 安装下面的库 :

$ sudo apt-get install build-essential clang libdbus-1-dev libgtk2.0-dev 
                       libnotify-dev libgnome-keyring-dev libgconf2-dev 
                       libasound2-dev libcap-dev libcups2-dev libxtst-dev 
                       libxss1 libnss3-dev gcc-multilib g++-multilib

在 Fedora, 安装下面的库 :

$ sudo yum install clang dbus-devel gtk2-devel libnotify-devel libgnome-keyring-devel 
                   xorg-x11-server-utils libcap-devel cups-devel libXtst-devel 
                   alsa-lib-devel libXrandr-devel GConf2-devel nss-devel

其它版本的也许提供了相似的包来安装,通过包管理器,例如 pacman. 或一个可以编译源文件的.

使用虚拟机

如果在虚拟机上构建 Electron,你需要一个固定大小的设备,至少需要 25 gigabytes .

获取代码

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

Bootstrapping

bootstrap 脚本也是必要下载的构建依赖,来创建项目文件.需要使用 Python 2.7.x 来让脚本成功执行.正确下载文件会花费较长的时间. 注意我们使用的是 ninja 来构建 Electron,所以没有生成 Makefile 项目.

$ cd electron
$ ./script/bootstrap.py -v

交叉编译

如果想创建一个 arm target ,应当还要下载下面的依赖 :

$ sudo apt-get install libc6-dev-armhf-cross linux-libc-dev-armhf-cross 
                       g++-arm-linux-gnueabihf

为了编译 arm  ia32 targets, 你应当为 bootstrap.py 脚本使用 --target_arch 参数:

$ ./script/bootstrap.py -v --target_arch=arm

构建

创建 Release  Debug target:

$ ./script/build.py

这个脚本也许会在目录 out/R 下创建一个巨大的可执行的 Electron . 文件大小或许会超过 1.3 gigabytes. 原因是 Release target 二进制文件包含了 调试符号 .运行 create-dist.py 脚本来减小文件的 size :

$ ./script/create-dist.py

这会在 dist 目录下创建一个有大量小文件的工作空间. 运行 create-dist.py 脚本之后, 或许你想删除仍然在 out/R 下的 1.3+ gigabyte 二进制文件.

可以只创建 Debug target:

$ ./script/build.py -c D

创建完毕, 可以在 out/D下面找到 electron.

Cleaning

删除构建文件 :

$ ./script/clean.py

解决问题

确保你已经安装了所有的依赖 .

Error While Loading Shared Libraries: libtinfo.so.5

预构建的 clang 会尝试链接到 libtinfo.so.5. 取决于 host 架构, 适当的使用 libncurses:

$ sudo ln -s /usr/lib/libncurses.so.5 /usr/lib/libtinfo.so.5

Tests

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

$ ./script/cpplint.py

测试有效性使用:

+
$ ./script/test.py

分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)