Как собрать Dash из исходников
Эта инструкция для Windows 10/11, Linuxmint, Dash 19.2.0
Dash Core, он же кошелек, он же нода (узел) - программа, запускаемая для управления своими монетами.
Управление - это возможность создавать кошельки, отправлять и получать монеты.
В простонародье эту программу называют кошельком, но поскольку она подключается по сети к таким же программам, то программисты называют ее нодой, что в переводе с английского означает узел. Нода - это узел сети.
Для начала вам нужно знать что,
Windows - это одна операционная система,
Linux - это другая операционная ситема. На самом деле их очень много и одна из них называется Ubuntu.
Нам нужно внутрь Windows установить Ubuntu.
Установка Ubuntu
Чтобы запустить командную оболочку PowerShell нажмите Пуск, начните набирать PowerShell и запустите эту программу от имени Администратора.
Выскочит синее окно - это и есть PowerShell - оболочка для ввода команд.
Скопируйте туда команду, указанную ниже. Для вставки просто щелкайте правой кнопкой мыши в окне.
После этого перезагрузите компьютер и из меню Пуск запустите новенькую Ubuntu.
В процессе настройки нужно ответить на вопросы чтобы создать пользователя и пароль. Переключитесь на английскую раскладку. При вводе пароля могут не отображаться звездочки, как это обычно бывает, но вводите пароль вслепую и нажимайте Enter, это так и задумано.
Устанавливаем необходимые инструменты
Запускаем Ubuntu из меню Пуск, копируем строки по одной и вставляем, просто щелкая правой кнопкой мыши.
sudo apt update sudo apt upgrade sudo apt install build-essential libtool autotools-dev \ automake pkg-config bsdmainutils curl git python3 \ nsis g++-mingw-w64-x86-64 qtbase5-dev qtchooser qttools5-dev-tools sudo update-alternatives --config x86_64-w64-mingw32-g++
Последняя команда выведет список из нескольких опций, найдите строку со словом posix, нажмите цифру, указанную в начале этой строки и нажмите Enter.
Дополнение: На Windows 11 версии 22H2, после установки Ubuntu, не полностью заработала сеть, поэтому первые же команды не могли обновить систему. Пришлось отредактировать файл resolv.conf командой
сразу после строк с решеткой #, и перед имеющейся неправильной. Ее можно не удалять.
Скачиваем исходники и собираем
Запускаем Ubuntu из меню Пуск и копируем строки по одной и вставляем, просто щелкая правой кнопкой мыши.
git clone https://github.com/dashpay/dash.git
cd dash/
git checkout tags/v19.2.0
PATH=$(echo "$PATH" | sed -e 's/:\/mnt.*//g')
cd depends
sudo bash -c "echo 0 > /proc/sys/fs/binfmt_misc/status"
make HOST=x86_64-w64-mingw32
cd ..
./autogen.sh
CONFIG_SITE=$PWD/depends/x86_64-w64-mingw32/share/config.site
./configure --prefix=/
mkdir -p /mnt/c/dash
make install DESTDIR=/mnt/c/dash
После этого у вас на диске C: появится папка dash, внутри которой папка bin, внутри которой запускаемый файл dash-qt.exe
Можете запустить его из командной оболочки так:
dash-qt.exe -usehd -prune=2048
Запуск с такими параметрами позволит сэкономить место на диске, старые блоки будут удаляться, чтобы занимать меньше чем 2048мб места. И новый кошелек будет создан из 24 ключевых слов которые называют seed-фраза, их можно посмотреть и записать на бумажку и потом восстановить кошелек на другом компьютере. Чтобы посмотреть эти слова, в меню нажимайте Окно -> Консоль, там наберите dumhdinfo, нажмите Enter и увидите их напротив слова mnemonic.
Сборка в Linuxmint
sudo apt install build-essential libtool autotools-dev automake pkg-config \
bsdmainutils curl git python3 qtbase5-dev qtchooser qttools5-dev-tools
git clone https://github.com/dashpay/dash.git
cd dash/
git checkout tags/v19.2.0
cd depends/
make
cd ..
./autogen.sh
CONFIG_SITE=$PWD/depends/x86_64-pc-linux-gnu/share/config.site
./configure --prefix=/usr
sudo make prefix=/usr libdir=/usr/lib64 install
dash-qt -usehd -prune=2048
Подготовиться к автономной сборке
Можно выкачать все необходимые исходники Dash+зависимости, чтобы потом можно было собрать даже если зависимости вдруг пропадут.
git clone https://github.com/dashpay/dash.git
cd dash/
git checkout tags/v19.2.0
cd depends/
make download
Теперь можно создать архив и кинуть его в надежное место, чтобы потом продолжить сборку.