2016-06-18 13:26:26 +00:00
|
|
|
# Build Instructions (macOS)
|
2015-08-31 05:30:23 +00:00
|
|
|
|
2016-06-18 13:26:26 +00:00
|
|
|
Follow the guidelines below for building Electron on macOS.
|
2013-09-09 07:35:57 +00:00
|
|
|
|
2013-08-14 22:43:35 +00:00
|
|
|
## Prerequisites
|
|
|
|
|
2016-06-18 13:26:26 +00:00
|
|
|
* macOS >= 10.8
|
2014-05-09 02:04:13 +00:00
|
|
|
* [Xcode](https://developer.apple.com/technologies/tools/) >= 5.1
|
2015-08-31 05:30:23 +00:00
|
|
|
* [node.js](http://nodejs.org) (external)
|
2013-08-14 22:43:35 +00:00
|
|
|
|
2015-08-31 05:30:23 +00:00
|
|
|
If you are using the Python downloaded by Homebrew, you also need to install
|
2013-11-26 03:46:45 +00:00
|
|
|
following python modules:
|
|
|
|
|
2016-10-11 14:34:35 +00:00
|
|
|
* [pyobjc](https://pythonhosted.org/pyobjc/install.html)
|
2013-11-26 03:46:45 +00:00
|
|
|
|
2015-08-31 05:30:23 +00:00
|
|
|
## Getting the Code
|
2013-08-14 22:43:35 +00:00
|
|
|
|
|
|
|
```bash
|
2016-03-31 23:49:59 +00:00
|
|
|
$ git clone https://github.com/electron/electron.git
|
2013-08-14 22:43:35 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
## Bootstrapping
|
|
|
|
|
2013-08-29 14:37:51 +00:00
|
|
|
The bootstrap script will download all necessary build dependencies and create
|
2016-04-22 13:53:26 +00:00
|
|
|
the build project files. Notice that we're using [ninja](https://ninja-build.org/)
|
|
|
|
to build Electron so there is no Xcode project generated.
|
2013-08-14 22:43:35 +00:00
|
|
|
|
|
|
|
```bash
|
2015-04-16 03:31:12 +00:00
|
|
|
$ cd electron
|
2014-12-08 17:07:29 +00:00
|
|
|
$ ./script/bootstrap.py -v
|
2013-08-14 22:43:35 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
## Building
|
|
|
|
|
|
|
|
Build both `Release` and `Debug` targets:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ ./script/build.py
|
|
|
|
```
|
|
|
|
|
|
|
|
You can also only build the `Debug` target:
|
|
|
|
|
|
|
|
```bash
|
2015-04-10 13:56:02 +00:00
|
|
|
$ ./script/build.py -c D
|
2013-08-14 22:43:35 +00:00
|
|
|
```
|
|
|
|
|
2015-04-16 03:31:12 +00:00
|
|
|
After building is done, you can find `Electron.app` under `out/D`.
|
2013-08-14 22:43:35 +00:00
|
|
|
|
2015-08-31 05:30:23 +00:00
|
|
|
## 32bit Support
|
2014-05-05 01:48:44 +00:00
|
|
|
|
2016-06-18 13:26:26 +00:00
|
|
|
Electron can only be built for a 64bit target on macOS and there is no plan to
|
2016-08-18 15:19:06 +00:00
|
|
|
support 32bit macOS in the future.
|
2014-05-05 01:48:44 +00:00
|
|
|
|
2016-09-21 18:10:52 +00:00
|
|
|
## Cleaning
|
|
|
|
|
|
|
|
To clean the build files:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
$ npm run clean
|
|
|
|
```
|
|
|
|
|
2013-08-14 22:43:35 +00:00
|
|
|
## Tests
|
|
|
|
|
2015-08-31 05:30:23 +00:00
|
|
|
Test your changes conform to the project coding style using:
|
2015-08-08 20:25:27 +00:00
|
|
|
|
|
|
|
```bash
|
|
|
|
$ ./script/cpplint.py
|
|
|
|
```
|
|
|
|
|
|
|
|
Test functionality using:
|
|
|
|
|
2013-08-14 22:43:35 +00:00
|
|
|
```bash
|
|
|
|
$ ./script/test.py
|
|
|
|
```
|