====== Compilation Bitcoind ======
{{tag>crypto-monnaies bitcoin compilation}}
Sous Jessie, Bitcoin qt et bitcoind n'étaient pas disponibles. J'ai donc pris l'habitude de compiler bitcoind pour mettre en place des nodes serveurs.
===== Préparation =====
Pour commencer, nous installons les paquets nécessaires :
sudo aptitude install git build-essential libtool autotools-dev autoconf libssl-dev libboost-all-dev pkg-config checkinstall
Pour voir quelle est la dernière version disponible : https://github.com/bitcoin/bitcoin/branches La dernière version au moment de l'écriture de cet howto est la 0.14.2, nous allons donc utiliser celle-ci.
Ensuite nous créons le répertoire de travail et nous nous positionnons dedans :
mkdir src
cd src
et nous récupérons les sources (ici la version 0.14.2) :
git clone -b 0.14.2 https://github.com/bitcoin/bitcoin.git
===== Compilation =====
Nous nous plaçons dans le répertoire de travail et configurons le système pour la compilation :
cd bitcoin/
./autogen.sh
Nous lançons la configuration :
./configure --enable-hardening --disable-wallet --without-gui --without-miniupnpc
Il est conseillé d'activer "hardening" pour plus de sécurité
Si vous avez ce genre d'erreur :
configure: error: libevent not found.
Vous devez installer libevent-dev :
sudo aptitude install libevent-dev
Les NOUVEAUX paquets suivants vont être installés :
libevent-core-2.0-5{a} libevent-dev libevent-extra-2.0-5{a} libevent-openssl-2.0-5{a} libevent-pthreads-2.0-5{a}
0 paquets mis à jour, 5 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de télécharger 540 ko d'archives. Après dépaquetage, 1 942 ko seront utilisés.
On lance la compilation :
make
Et enfin on utilise "CheckInstall" pour l'installation. Contrairement à la commande "make install" qui ne fait que l'installation, Checkinstall construira un paquet sous forme de fichier .deb et l'installera automatiquement.
sudo checkinstall --pkgname=bitcoin --pkgversion=“5:$(date +%Y%m%d%H%M)-git” --backup=no --deldoc=yes --fstrans=no -default
Si vous voulez désinstaller bitcoin, il vous suffira de désinstaller le paquet :
sudo dpkg -r bitcoin
===== Quelques commandes =====
Pour lancer bitcoind en démon :
bitcoind -daemon
Pour avoir des informations sur la blockchain :
bitcoin-cli getblockchaininfo
Pour voir si votre instance est synchronisée :
echo `bitcoin-cli getblockcount 2>&1`/`wget -O - http://blockchain.info/q/getblockcount 2>/dev/null`
===== Ajouter la gestion de bitcoind par systemd =====
Pour ajouter la gestion du démarrage et de l'arrêt de bitcoind au boot par systemd :
sudo nano /etc/systemd/bitcoind.service
Et ajouter ce contenu (adaptez le nom de l'utilisateur) :
[Unit]
Description=Bitcoin daemon service
After=network.target
[Service]
Type=simple
User=bitcoin
ExecStart=/usr/local/bin/bitcoind -daemon
ExecStop=/usr/local/bin/bitcoin-cli stop
[Install]
WantedBy=multi-user.target
Enfin, démarrez et activez le service
sudo systemctl start bitcoind.service; systemctl enable bitcoind.service
===== Liens =====
* [[https://www.howtoforge.com/tutorial/how-to-compile-and-install-bitcoin-core-on-debian-wheezy/|How to compile and install Bitcoin Core on Debian Wheezy]]
* [[https://gist.github.com/dizda/8c1e9e8a8da8e35d1730|dizda/install-bitcoind.sh]]
* [[https://wiki.debian.org/fr/CheckInstall|CheckInstall sur le wiki Debian]]
* [[https://wiki.archlinux.org/index.php/Bitcoin|Trucs et astuces autour de bitcoin sur le wiki archlinux]]
* [[https://n00bsys0p.co.uk/articles/production-bitcoind-service-on-systemd|Production Ready Bitcoin Under systemd]]