electron/docs/development/build-instructions-osx.md

67 lines
1.2 KiB
Markdown
Raw Normal View History

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
following python modules:
* pyobjc
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
The bootstrap script will download all necessary build dependencies and create
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
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
support 32bit macOS in future.
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:
```bash
$ ./script/cpplint.py
```
Test functionality using:
2013-08-14 22:43:35 +00:00
```bash
$ ./script/test.py
```