Как собрать tar-архив Bitcoin Core Linux из исходников

Я пытаюсь собрать тот же архив, который вы можете скачать с веб-сайта, содержащий следующее дерево файлов:

$ 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

Я использую конфигурацию «префикс», чтобы поместить двоичные файлы в определенную папку.

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

Теперь содержимое, которое я получаю в целевом каталоге, почти такое же (есть еще несколько файлов). Однако, когда я пытаюсь скопировать и запустить его внутри контейнера, он выдает ошибку (что не относится к исходному архиву).

Итак, мой вопрос: как мне собрать исходники, чтобы создать тот же архив, который вы получаете с веб-сайта?

Ответы (1)

Скомпилированные двоичные файлы на веб-сайте построены с использованием gitian. Это детерминировано, поэтому вы получите идентичную сборку для всех, кто ее построил, для целей проверки. Вы можете найти инструкции о том, как это сделать здесь: https://github.com/bitcoin/bitcoin/blob/master/doc/release-process.md

Для полноты добавляю эту ссылку, что тоже очень важно: github.com/bitcoin-core/docs/blob/master/gitian-building.md
Поскольку у меня были некоторые проблемы с завершением процесса сборки, я написал небольшое руководство в качестве справки: gist.github.com/frz-dev/3e3e906fa06294e61930e81b473e1e5b .