Собирал под Fedora 24 и Centos 7. Как обычно бывает с проектами на C++, если среда сборки чем-то отличается от среды разработчиков, без напильника не обойтись, но все получилось достаточно гладко. При сборке под Убунту манипуляций скорее всего будет немного меньше. Пользователи Виндовс могут попробовать проделать это в виртуальной машине (где-то писали, что для Виндовс лучше работает майнер в виртуальной машине, не знаю, актуально ли это еще).
Для начала нужно установить Boost 1.60.0 (с 1.61.0 не собралось). Скачать, распаковать:
$ tar -xjf boost_1_60_0.tar.bz2
$ cd boost_1_60_0/
Для сборки с GCC 6.1 (в Федоре) нужно заменить файл boost/multiprecision/cpp_int.hpp
на эту версию (для ЦентОС и других дистрибутивов с более старым GCC — не нужно). Дальше можно собирать:
$ ./bootstrap.sh --prefix="$HOME/opt/boost-1.60.0"
$ ./b2
$ ./b2 install
Для ЦентОС нужно еще установить последний cmake из исходников (в Федоре подходит версия из дистрибутива).
Теперь можно собирать steemd:
$ git clone --recursive https://github.com/steemit/steem.git
$ cd steem
$ cmake -DBOOST_ROOT="$HOME/opt/boost-1.60.0" \
-DENABLE_CONTENT_PATCHING=OFF -DLOW_MEMORY_NODE=ON \
-DCMAKE_BUILD_TYPE=Release .
В Федоре при сборке была ошибка, которая исправилась заменой строчки (здесь символ диеза вместо хеша, иначе Стимит думает, что это тег).
♯define FC_GIT_REVISION_UNIX_TIMESTAMP HEAD-HASH-NOTFOUND
на
♯define FC_GIT_REVISION_UNIX_TIMESTAMP 0
в файле libraries/fc/git_revision.cpp
.
Параметры ENABLE_CONTENT_PATCHING=OFF
и LOW_MEMORY_NODE=ON
по идее должны экономить ресурсы узла. Но пямяти steemd все равно требует много: у меня работающий майнер сейчас использует 5 ГБ (2,8 ГБ в оперативной памяти и 2,2 ГБ в свопе).
Собранный steemd (полный узел Стима с майнером) находится в programs/steemd/steemd
, командно-строковый кошелек — programs/cli_wallet/cli_wallet
.
В следующем посте опишу как настроить steemd для добычи новых аккаунтов или пополнения существующих.
Здравствуйте!Спасибо за статью! А можете про ubuntu расписать?И если памяти меньше пяти,есть ли смысл начинать?
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Для Убунту смотрите здесь. Там сказано, откуда какие зависимости брать для разных версий дистрибутива, а в остальном примерно то же самое. Cmake должен работать из дистрибутива, а Boost, похоже, нужно будет так же устанавливать из исходников. Замена файла в Boost и исправление строчки в git_revision.cpp, вероятно, не потребуется.
На компьютере с 4 ГБ памяти у меня майнить не получилось: жуткий свопинг после запуска steemd, начала майнинга так и не дождался. Но там был медленный ноутбучный HDD, на SSD может и просвопится. После запуска майнига на другом компьютере в памяти осталось меньше 3 ГБ, остальное улеглось в свопе, т. ч. во время майнинга 4 ГБ хватает, но нужно добиться, чтобы запустилось.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I upvote U
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit