Installatie

Tijd: bijna 2 uur (waarvan 95% wachten tijdens het make commando)

Ga er maar even goed voor zitten, want met dit onderdeel ben je wel even zoet. Het doel is om Bitcoin Core zelf samen te stellen. Wat moeten we daar voor doen?

  • Dependencies installeren, er is wat software nodig om Bitcoin Core samen te stellen.

  • Broncode ophalen, door middel van Git kunnen we de nieuwste broncode ophalen.

  • Database installeren

  • Bitcoin Core samenstellen

Dependencies

Voer het volgende uit om de dependencies te installeren. Dependencies zijn precies wat het zegt; afhankelijkheden. Het zelf samenstellen van Bitcoin Core is afhankelijk van andere software.

sudo apt install git automake autoconf autotools-dev build-essential make pkg-config protobuf-compiler libminiupnpc-dev libprotobuf-dev libdb++-dev libzmq3-dev libsqlite3-dev libboost-thread-dev libboost-test-dev libboost-all-dev libevent-dev libtool libssl-dev libboost-system-dev libboost-filesystem-dev -y

Broncode

Zorg allereerst dat je in de "home directory" zit. Om er zeker van te zijn voer je cd ~ uit. De tilde (~) is een afkorting voor /home/pi in dit geval. Voer daarna het volgende uit om de broncode binnen te halen en in je home directory neer te zetten. Automatisch zal hier een map aangemaakt worden genaamd bitcoin met daarin de broncode.

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

Duik de bitcoin map in. Dit is nodig tijdens de volledige installatie van Core.

cd bitcoin

Voor de mensen die iets van Git afweten: ja, we blijven op de master branch zitten. Hier zit ondersteuning voor onion v3 adressen in, wat pas in een latere versie echt uitgebracht wordt. Wil je dat niet, kun je met het volgende commando kiezen welke versie van Core je wil. Op het moment van schrijven is 0.20 de meest recente versie.

Gezien de git-flow van Bitcoin Core kun je er vanuit gaan dat alles in de master branch correct en foutloos funtioneert. Het release proces van Bitcoin Core hakt de master branch af op een vaste datum. Alles wat op die branch zat op moment van afhakken, zal meegenomen in de release. Alles dat daarna in de branch komt, zal in een volgende release komen.

# Dit is dus optioneel
git checkout v0.21.0

Database

In de repository van Core is een script aanwezig waarmee de database geïnstalleerd kan worden. Dit heeft Bitcoin Core nodig om te werken. Blijf in de huidige map (/home/pi/bitcoin) zitten en voer het script uit met het onderstaande commando. Alle volgende commando's moeten ook uitgevoerd worden vanuit deze map.

./contrib/install_db4.sh `pwd`
export BDB_PREFIX='/home/pi/bitcoin/db4'

Bitcoin Core samenstellen

Tot slot het samenstellen van Bitcoin Core.

./autogen.sh

Met het volgende commando configureren we de installatie van Bitcoin Core. Het is mogelijk om Bitcoin Core te draaien zonder wallet functionaliteit en dus puur te gebruiken als backend voor je andere wallets. Weet je zeker dat je de ingebouwde wallet functionaliteit van Core niet zal gebruiken, draai dan:

./configure --enable-upnp-default --without-gui --disable-wallet BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" BDB_CFLAGS="-I${BDB_PREFIX}/include"

Aan dit commando is de instelling --disable-wallet meegegeven. Weet je het niet zeker, draai dan onderstaand commando.

Heb je Bitcoin Core geconfigureerd zónder wallet functionaliteit en wil je dit later toch toevoegen, voer dan alles vanaf onderstaand commando nog een keer uit.

./configure --enable-upnp-default --without-gui BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" BDB_CFLAGS="-I${BDB_PREFIX}/include"

Na op enter drukken van het volgende commando kun je wat voor jezelf gaan doen. Uit ervaring blijkt deze stap bijna anderhalf uur te duren.

make

Als je wat testjes wil draaien om te kijken of alles goed zit, kun je make check uitvoeren. Dit is optioneel en duurt zo'n vijftien minuten.

Rond het geheel af met:

sudo make install

Dat was het voor het installeren van Core! Je kunt terug naar de home directory met cd ~.