* docs: update package.json and build docs * fix build release * address feedback from review * whoops forgot one * fix build script * address feedback from review
3.5 KiB
Build Instructions (macOS)
Follow the guidelines below for building Electron on macOS.
Prerequisites
Python
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:
$ npm run check-tls
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 python@2 && brew link python@2 --force
If you are using Python as provided by Homebrew, you also need to install the following Python modules:
macOS SDK
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.
Official Electron builds are built with Xcode 8.2.1, which does not contain the 10.10 SDK by default. To obtain it, first download and mount the Xcode 6.4 DMG.
Then, assuming that the Xcode 6.4 DMG has been mounted at /Volumes/Xcode
and
that your Xcode 8.2.1 install is at /Applications/Xcode.app
, run:
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:
- Open
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Info.plist
- Set the
MinimumSDKVersion
to10.10
- Save the file
Getting the Code
$ git clone https://github.com/electron/electron
Bootstrapping
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.
To bootstrap for a static, non-developer build, run:
$ cd electron
$ npm run bootstrap
Or to bootstrap for a development session that builds faster by not statically linking:
$ cd electron
$ npm run bootstrap:dev
If you are using editor supports JSON compilation database based language server, you can generate it:
$ ./script/build.py --compdb
Building
To build both Release
and Debug
targets:
$ npm run build
You can also build either the Debug
or Release
target on its own:
$ npm run build:dev
$ npm run build:release
After building is done, you can find Electron.app
under out/D
.
32bit Support
Electron can only be built for a 64bit target on macOS and there is no plan to support 32bit macOS in the future.
Cleaning
To clean the build files:
$ npm run clean
To clean only out
and dist
directories:
$ npm run clean-build
Note: Both clean commands require running bootstrap
again before building.