dogecoin/doc/build-macos.md
Patrick Lodder 24680c4d40
docs: update macos build guide
- Removes the boost source compile, no longer needed since 41406bf
- Formats to be closer to the other build guides
- Remove $-signs in front of commands, to make it easier to c&p
- Replaces the old build-osx guide because that is unmaintained
  and this one is better
- Now tested on Big Sur 11.3
2021-10-19 00:20:39 +02:00

2.3 KiB

Building dogecoin-qt 1.14 on Intel (x86_64) macs.

Tested on OSX 10.11 El Capitan, 10.13 High Sierra and 11.3 Big Sur.

Clone dogecoin locally, or check it out, etc.

git clone https://github.com/dogecoin/dogecoin.git

Set up OSX basic build dependencies.

Install xcode-select commandline utils.

xcode-select --install

NOTE: If you have Xcode installed, simply zip it up and move it for this process, as your current Xcode install will likely conflict. Unzip it back later.

Make sure frameworks dir is properly owned...

sudo mkdir /usr/local/Frameworks
sudo chown $(whoami):admin /usr/local/Frameworks

Install Brew. (If you already have Brew installed, perform a 'brew update'.)

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Install dependencies via Brew.

brew install autoconf automake libtool miniupnpc openssl pkg-config protobuf \
             qt5 zeromq qrencode librsvg boost

Get, Patch And Compile BDB 5.3

Download BDB 5.3.28 source from Oracle.

curl -o db-5.3.28.tar.gz http://download.oracle.com/berkeley-db/db-5.3.28.tar.gz
tar xvfz db-5.3.28.tar.gz
cd db-5.3.28

Build BDB 5.3.28

cd ../..
cd build_unix

../dist/configure CXX=clang++ --enable-cxx
make

sudo mkdir /usr/local/BerkeleyDB.5.3
sudo chown $(whoami):admin /usr/local/BerkeleyDB.5.3

sudo make install
export LDFLAGS=-L/usr/local/BerkeleyDB.5.3/lib
export CPPFLAGS=-I/usr/local/BerkeleyDB.5.3/include

NOTE: for MacOS BigSur (11.1) or later, and possibly Catalina (10.15) you will also have to include the "OBJC_OLD_DISPATCH_PROTOTYPES=1" flag.

So in this case you want the above export to be:

export CPPFLAGS="-I/usr/local/BerkeleyDB.5.3/include -DOBJC_OLD_DISPATCH_PROTOTYPES=1"

(Note that the quotes are required.)

export INCPATHS=-I/usr/local/opt/openssl/include
export LIBPATHS=-L/usr/local/opt/openssl/lib
cd /usr/local/include
ln -s ../opt/openssl/include/openssl

Go back to your Dogecoin repo

cd ~/dogecoin

./autogen.sh
./configure --with-gui=qt5 --with-qrcode=yes
make

Go have a beverage.

make install

Go have another beverage.

Run it.

/usr/local/bin/dogecoin-qt