How to build Bitcoin Core Linux tarball from sources

0

I'm trying to build the same tarball you can download from the website, containing the following filetree:

$ ls -R ../../bitcoin-0.15.0/
../../bitcoin-0.15.0/:
bin  include  lib  share

../../bitcoin-0.15.0/bin:
bitcoin-cli  bitcoind  bitcoin-qt  bitcoin-tx  test_bitcoin

../../bitcoin-0.15.0/include:
bitcoinconsensus.h

../../bitcoin-0.15.0/lib:
libbitcoinconsensus.so  libbitcoinconsensus.so.0  libbitcoinconsensus.so.0.0.0

../../bitcoin-0.15.0/share:
man

../../bitcoin-0.15.0/share/man:
man1

../../bitcoin-0.15.0/share/man/man1:
bitcoin-cli.1  bitcoind.1  bitcoin-qt.1  bitcoin-tx.1

I'm using the 'prefix' configure to put the binaries into a specific folder

./configure --prefix=/home/ff/bitcoin-build

Now, the content I get inside the target directory is almost the same (there are some files more). However,when I try to copy and run it inside a container it gives me an error (which is not the case with the original tarball).

So, my question is: how do I build the sources in order to produce the same tarball you get from the website?

FedFranzoni

Posted 2017-10-10T11:27:10.433

Reputation: 490

Answers

1

The compiled binaries on the website are built using gitian. This is deterministic so you'll get an identical build to everyone else who has built it, for verification purposes. You can find instructions on how to do this here: https://github.com/bitcoin/bitcoin/blob/master/doc/release-process.md

MeshCollider

Posted 2017-10-10T11:27:10.433

Reputation: 8 735

For the sake of completeness, I add this link, which is also very important: https://github.com/bitcoin-core/docs/blob/master/gitian-building.md

FedFranzoni 2017-10-18T17:06:45.220

Since I had some troubles in actually completing the building process, I wrote a small guide as a reference: https://gist.github.com/frz-dev/3e3e906fa06294e61930e81b473e1e5b

FedFranzoni 2017-10-19T16:04:19.813