Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Compile Bitcoin on Ubuntu 14.04
Assuming the username of the Ubuntu user is "theusername".
Preparation
-----------
```
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential libtool autotools-dev autoconf pkg-config libssl-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libqt5gui5 libqt5core5 libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler
sudo apt-get install libqrencode-dev
sudo apt-get install libminiupnpc-dev
```
Download bitcoin source code
----------------------------
```
cd ~
git clone https://github.com/bitcoin/bitcoin.git
```
Download and compile Berkley DB 4.8
-----------------------------------
```
cd ~
mkdir bitcoin/db4/
wget 'http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz'
tar -xzvf db-4.8.30.NC.tar.gz
cd db-4.8.30.NC/build_unix/
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=/home/theusername/bitcoin/db4/
make install
```
Compile Bitcoin with Berkley DB 4.8
-----------------------------------
```
cd ~/bitcoin/
./autogen.sh
./configure LDFLAGS="-L/home/theusername/bitcoin/db4/lib/" CPPFLAGS="-I/home/theusername/bitcoin/db4/include/"
make -s -j5
```
Run Bitcoin Daemon/QT/Client
----------------------------
```
./src/bitcoind
./src/bitcoin-qt
./src/bitcoin-cli
```
Please share your experience and provide constructive feedback!
Thanks,
--- Kosta
@kostaz

This comment has been minimized.

Copy link
Owner Author

commented Aug 20, 2014

Updated: added "protobuf-compiler" as dependency.

@nivertech

This comment has been minimized.

Copy link

commented Aug 25, 2014

I was able to compile with Qt on Ubuntu 12.04 LTS:
https://gist.github.com/nivertech/778347fa47aee459ed9c

How to disable downloading of blockchain?
Is this possible to download dump of the blockchain and put it on external USB drive?

@asubbarao

This comment has been minimized.

Copy link

commented Feb 19, 2017

I am fine up to line 49 "./src/bitcoind" but then I get the error message as following:


alok@as-Thinkpad:~/bitcoin$ ./src/bitcoind
: Incorrect or no genesis block found. Wrong datadir for network?

Any help please?

@djp3

This comment has been minimized.

Copy link

commented Mar 13, 2017

I needed to install libevent-dev and libqt5core5a
Thanks for this guide!

@anhgien

This comment has been minimized.

Copy link

commented Apr 16, 2017

@asubbarao: you just remove ~/.bitcoin directory with cmd "rm -rf ~./bitcoin"

@rusticbison

This comment has been minimized.

Copy link

commented Apr 19, 2017

I needed to install libevent-dev and libqt5core5a

I am running Ubuntu 16.04.2 LTS and also needed to install libqt5core5a.

Additionally, I had compiler issues when I attempted:
make -s -j5

This solution worked for me:
https://bitcointalk.org/index.php?topic=304389.0

free
dd if=/dev/zero of=/var/swap.img bs=1024k count=1000
mkswap /var/swap.img
swapon /var/swap.img
free
make -f Makefile 
@juanpastas

This comment has been minimized.

Copy link

commented Apr 24, 2017

Here is what I did for ubuntu 16:

sudo add-apt-repository ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install -y libdb4.8-dev libdb4.8++-dev
@earonesty

This comment has been minimized.

Copy link

commented Jul 24, 2017

Worked great, for ubuntu 16, had to add libevent-dev, and libqt5core5a instead of libqt5core5.

@TTcoinDeveloper

This comment has been minimized.

Copy link

commented Sep 18, 2017

thanks

@Nurdur

This comment has been minimized.

Copy link

commented Sep 21, 2017

After entering line 33: (../dist/configure --enable-cxx --disable-shared --with-pic --prefix=/home/theusername/bitcoin/db4/) I get:

configure: error: libdb_cxx headers missing, Bitcoin Core requires this library for wallet functionality

Edit: Ubuntu 16.04.3 LTS

@JReganE

This comment has been minimized.

Copy link

commented Nov 16, 2017

Thanks for this.

@bitcoineconomics2018

This comment has been minimized.

Copy link

commented Dec 1, 2017

I'm stuck at line 42, Compile Bitcoin with Berkley DB 4.8, I get: -bash: ./configure: No such file or directory

Any help???

@caikehe

This comment has been minimized.

Copy link

commented Jan 24, 2018

solution works for me on Ubuntu 16.04:

sudo add-apt-repository ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install -y libdb4.8-dev libdb4.8++-dev

@wuqichun

This comment has been minimized.

Copy link

commented Jan 28, 2018

i've been trying

@bensonkb

This comment has been minimized.

Copy link

commented Feb 10, 2018

However the following packages replace it:
libqt5core5a

E: Package 'libqt5core5' has no installation candidate

Update this to document

@xiaonan778

This comment has been minimized.

Copy link

commented Feb 11, 2018

@caikehe It works! thx

@sken77

This comment has been minimized.

Copy link

commented Feb 12, 2018

in Ubuntu 16 you also need to run

sudo apt-get install libevent-dev

@smartmanjp

This comment has been minimized.

Copy link

commented Mar 6, 2018

Hello I was installing this to learn and i get stack on make -s -j5 I get this terry@rootminingpool:/bitcoin$ make -s -j5
make: *** No targets specified and no makefile found. Stop.
terry@rootminingpool:
/bitcoin$
Any help

@smartmanjp

This comment has been minimized.

Copy link

commented Mar 6, 2018

and inside the fold i have
terry@rootminingpool:/bitcoin$ ll
total 1420
drwxrwxr-x 14 terry terry 4096 Mar 6 16:59 ./
drwxr-xr-x 23 terry terry 4096 Mar 6 16:43 ../
-rw-rw-r-- 1 terry terry 56106 Mar 6 16:59 aclocal.m4
-rwxrwxr-x 1 terry terry 527 Mar 6 16:42 autogen.sh*
drwxr-xr-x 2 terry terry 4096 Mar 6 16:59 autom4te.cache/
drwxrwxr-x 3 terry terry 4096 Mar 6 16:59 build-aux/
-rw-rw-r-- 1 terry terry 163272 Mar 6 16:59 config.log
-rwxrwxr-x 1 terry terry 1011199 Mar 6 16:59 configure*
-rw-rw-r-- 1 terry terry 48531 Mar 6 16:42 configure.ac
drwxrwxr-x 17 terry terry 4096 Mar 6 16:42 contrib/
-rw-rw-r-- 1 terry terry 13886 Mar 6 16:42 CONTRIBUTING.md
-rw-rw-r-- 1 terry terry 1142 Mar 6 16:42 COPYING
drwxrwxr-x 2 terry terry 4096 Mar 6 16:43 db4/
drwxrwxr-x 6 terry terry 4096 Mar 6 16:42 depends/
drwxrwxr-x 4 terry terry 4096 Mar 6 16:42 doc/
drwxrwxr-x 8 terry terry 4096 Mar 6 16:42 .git/
-rw-rw-r-- 1 terry terry 35 Mar 6 16:42 .gitattributes
drwxrwxr-x 2 terry terry 4096 Mar 6 16:42 .github/
-rw-rw-r-- 1 terry terry 1515 Mar 6 16:42 .gitignore
-rw-rw-r-- 1 terry terry 161 Mar 6 16:42 INSTALL.md
-rw-rw-r-- 1 terry terry 295 Mar 6 16:42 libbitcoinconsensus.pc.in
-rw-rw-r-- 1 terry terry 11091 Mar 6 16:42 Makefile.am
-rw-rw-r-- 1 terry terry 46839 Mar 6 16:59 Makefile.in
-rw-rw-r-- 1 terry terry 3600 Mar 6 16:42 README.md
drwxrwxr-x 5 terry terry 4096 Mar 6 16:42 share/
drwxrwxr-x 21 terry terry 4096 Mar 6 16:59 src/
drwxrwxr-x 4 terry terry 4096 Mar 6 16:42 test/
-rw-rw-r-- 1 terry terry 6959 Mar 6 16:42 .travis.yml
drwxrwxr-x 2 terry terry 4096 Mar 6 16:42 .tx/
terry@rootminingpool:
/bitcoin$

@jazap

This comment has been minimized.

Copy link

commented May 31, 2018

Excellent work. How does one edit the qt client GUI interface?

@xiaoyue2019

This comment has been minimized.

Copy link

commented Sep 3, 2018

Thanks for sharing, after the installation, the software language is garbled and I am getting an error:

If this sounds wrong, possibly the target language is not set or recognized.

what should I do?

@ashishcse0031

This comment has been minimized.

Copy link

commented Apr 13, 2019

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.