====== 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]]