Follow the guidelines below for building Electron on macOS.
Please also ensure that your system and Python version support at least TLS 1.2. This depends on both your version of macOS and Python. For a quick test, run:
$ python ./script/tls.py
If the script returns that your configuration is using an outdated security protocol, you can either update macOS to High Sierra or install a new version of Python 2.7.x. To upgrade Python, use Homebrew:
$ brew install [email protected] && brew link [email protected] --force
If you are using Python as provided by Homebrew, you also need to install the following Python modules:
If you're developing Electron and don't plan to redistribute your custom Electron build, you may skip this section.
For certain features (e.g. pinch-zoom) to work properly, you must target the macOS 10.10 SDK.
Then, assuming that the Xcode 6.4 DMG has been mounted at
/Volumes/Xcode and that your Xcode 8.2.1 install is at
cp -r /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
You will also need to enable Xcode to build against the 10.10 SDK:
$ git clone https://github.com/electron/electron
The bootstrap script will download all necessary build dependencies and create the build project files. Notice that we're using ninja to build Electron so there is no Xcode project generated.
$ cd electron $ ./script/bootstrap.py -v
If you are using editor supports JSON compilation database based language server, you can generate it:
$ ./script/build.py --compdb
You can also only build the
$ ./script/build.py -c D
After building is done, you can find
Electron can only be built for a 64bit target on macOS and there is no plan to support 32bit macOS in the future.
To clean the build files:
$ npm run clean
To clean only
$ npm run clean-build
Note: Both clean commands require running
bootstrap again before building.
© 2013–2018 GitHub Inc.
Licensed under the MIT license.