SomberNight
f54c387172
|
6 years ago | |
---|---|---|
.. | ||
CalinsQRReader@20189155a4 | 6 years ago | |
README.md | 6 years ago | |
base.sh | 6 years ago | |
cdrkit-deterministic.patch | 6 years ago | |
make_osx | 6 years ago | |
osx.spec | 6 years ago | |
package.sh | 6 years ago |
README.md
Building Mac OS binaries
This guide explains how to build Electrum binaries for macOS systems.
1. Building the binary
This needs to be done on a system running macOS or OS X. We use El Capitan (10.11.6) as building it on High Sierra (or later) makes the binaries incompatible with older versions.
1.1 Get Xcode
Building the QR code reader (CalinsQRReader) requires full Xcode (not just command line tools).
The last Xcode version compatible with El Capitan is Xcode 8.2.1
Get it from here.
Unfortunately, you need an "Apple ID" account.
After downloading, uncompress it.
Make sure it is the "selected" xcode (e.g.):
sudo xcode-select -s $HOME/Downloads/Xcode.app/Contents/Developer/
1.2 Build Electrum
cd electrum
./contrib/osx/make_osx
This creates both a folder named Electrum.app and the .dmg file.
2. Building the image deterministically (WIP)
The usual way to distribute macOS applications is to use image files containing the
application. Although these images can be created on a Mac with the built-in hdiutil
,
they are not deterministic.
Instead, we use the toolchain that Bitcoin uses: genisoimage and libdmg-hfsplus. These tools do not work on macOS, so you need a separate Linux machine (or VM).
Copy the Electrum.app directory over and install the dependencies, e.g.:
apt install libcap-dev cmake make gcc faketime
Then you can just invoke package.sh
with the path to the app:
cd electrum
./contrib/osx/package.sh ~/Electrum.app/