Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
gbir
7 лет назад

Инструкция для сборки EOS

Как и обещал, выкладываю полную инструкцию по сборке EOS пока только на masOS (Sierra), было достаточно много попыток сделано, прежде чем я нашел, этот наиболее оптимальный путь. В целом, ничего сложного нет, я писал с расчетом, что читающий второй раз в жизни видит консоль.

Для начала посетите в репозиторий EOSа, он находится по адресу:

https://github.com/EOSIO/eos

Для скачивания репозитория необходимо в терминале выполнить следующую команду:

git clone https://github.com/eosio/eos --recursive

Для начала сборки нам необходимо собрать все окружение, в репозитории разработчики указали следующие компоненты:

  • Boost
  • OpenSSL
  • secp256k1-zkp (Cryptonomex branch)

Установку Boost и OpenSSL я рекомендую через brew, люди которым интересно могут установить и вручную.

Ссылка на brew:
https://brew.sh/index_ru.html

Команда для установки:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Дождавшись конца установки, продолжаем собирать свои инструменты.
Команды на установку Boost и OpenSSL:

brew install Boost
brew install OpenSSL

Из стандартного набора разработчика под mac понадобится autotools, он устанавливается этой командой:

sudo xcode-select --install

Далее нам нужно поставить CMake, иначе следующую библиотеку собрать не получится. Разработчики EOS указали, что в работе использовали версию 3.8.0, я скачал версию (Unix/Linux 3.9.0) по ссылке:
https://cmake.org/files/v3.9/cmake-3.9.0-rc2.tar.gz

Команды для сборки:

./bootstrap
make
sudo make install

Возможно, кто-то захочет использовать не консольный CMake, чтобы избежать возни с вводом команд, но, на мой взгляд, это только добавит вам проблем.

Также необходимо установить autoconf, automake, libtool, инструкцию по их установке я взял от сюда:
http://munchpress.com/installing-autoconf-automake-libtool-on-mac-osx-mountain-lion/

autoconf:

curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz
tar -xzf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure && make && sudo make install

automake:

curl -OL http://ftpmirror.gnu.org/automake/automake-1.14.tar.gz
tar -xzf automake-1.14.tar.gz
cd automake-1.14
./configure && make && sudo make install

libtool:

curl -OL http://ftpmirror.gnu.org/libtool/libtool-2.4.2.tar.gz
tar -xzf libtool-2.4.2.tar.gz
cd libtool-2.4.2
./configure && make && sudo make install

Далее нам нужно установить secp256k1-zkp, тут уже нам brew не поможет, но достаточно использовать список команд описанный в репозитории EOS:

git clone https://github.com/cryptonomex/secp256k1-zkp.git
./autogen.sh
./configure
make
sudo make install

Казалось бы можно и начинать сборку, для этого достаточно перейти в терминале в папку с репозиторием EOS и вызвать команду: cmake .


Иначе получим следующий лог ошибок:

CMake Error at /usr/local/share/cmake-3.9/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the
system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY
OPENSSL_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/local/share/cmake-3.9/Modules/FindPackageHandleStandardArgs.cmake:377 (_FPHSA_FAILURE_MESSAGE)
/usr/local/share/cmake-3.9/Modules/FindOpenSSL.cmake:388 (find_package_handle_standard_args)
libraries/fc/CMakeLists.txt:58 (find_package)
-- Configuring incomplete, errors occurred!
See also "/Users/mlinkov/Documents/eos/CMakeFiles/CMakeOutput.log".

Перед сборкой нужно указать путь до OPENSSL, который по какой-то причине не подхватывается из коробки, для этого выполним в терминале эту строку:

cmake -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DOPENSSL_LIBRARIES=/usr/local/opt/openssl/lib -DCMAKE_BUILD_TYPE=Debug

Последняя часть команды выставляет тип сборки Debug или Release

После всех этих процедур можете выполнить cmake . для конфигурирования и сборки проекта, а потом и make чтобы получить билд (и пойти скушать бутер пока он собирается).

Если вы все правильно сделали, то в конце логов вы увидите заветные две строчки:

[100%] Linking CXX executable eosd
[100%] Built target eosd

Можете выдохнуть и запустить тесты, в папке tests файл chain_test.

Для того, чтобы инсталлировать EOS, нужно вызвать команду make install .

Если в процессе у вас возникли затруднения - пишите в комментариях, будем пытаться их решить.

Планирую сделать виртуалку с Ubuntu с поднятой инфраструктурой для сборки. Пока радиус кривизны рук не позволил запилить рабочую сборку, но, как только удача неминуемо постигнет меня, я с вами поделюсь результатами.

15
614.197 GOLOS
На Golos с June 2017
Комментарии (21)
Сортировать по:
Сначала старые