Компилируем криптовалютный кошелёк SCC
Криптовалют с каждым днём становится всё больше. Некоторые из них уходят в небытие, а некоторые долго остаются на плаву. Часть из них – это форки первой криптовалюты Bitcoin, остальные создаются на платформах типа Ethereum и Waves. Здесь я хотел бы обратить ваше внимание на криптовалюту SCC, которая является форком Bitcoin, и, поскольку наш сайт по технической части, то скомпилировать кошелёк для этой монеты для ОС Windows.
Итак, почему я выбрал монету SCC. Честно говоря, мне нравится проект StakeCube, частью которого является монета SCC. StakeCube – это пул криптовалют, которые поддерживают PoS-майнинг. Правда здесь выгодно держать и некоторые широко распространённые криптовалюты, такие как Bitcoin, Litecoin, Dash и Dogecoin, т.к. пока ваши монеты лежат в пуле, вы каждый день получаете процент. Есть в этом пуле и другие интересные фишки, например, обменник и краны, но об этом я напишу в какой-нибудь другой раз.
Теперь у вас может возникнуть вопрос, зачем компилировать кошелёк, если его можно скачать. Ну, тут может быть много причин. Например:
- Вы хотите помочь проекту, например, сделать свой перевод или исправить какие-либо ошибки, а потом залить это изменение обратно в GitHub;
- Вы хотите получить самые последние фишки, не ожидая, когда разработчики доделают финальную версию;
- Хотите поменять цвет фона, шрифтов и т.д. и т.п., потому что вам так больше нравится или хочется;
- Вы не доверяете тем бинарникам, которые были скомпилированы неизвестно кем и где.
Начнём разбираться, как самостоятельно скомпилировать криптовалютный кошелёк для ОС Windows на примере монеты SCC. Кошельки для всех остальных форков Bitcoin вы сможете скомпилировать аналогичным образом. Итак, приступим.
Кошельки форков Bitcoin – это кроссплатформенные приложения, которые можно компилировать можно двумя способами: на ОС Linux или на ОС Windows. Первый способ очень простой, и он возможен, если у вас у вас на компьютере Linux или Windows 10. Второй способ мне представляется слишком сложным. Если такой способ кого-либо заинтересует, дайте знать.
В этой статье мы рассмотрим способ компиляции криптовалютного кошелька SCC на Windows 10 с помощью ОС Linux. Я использую Windows 10 версии 1909. Рассмотрим, что нужно делать по шагам.
Установка подсистемы Windows для Linux в Windows 10
Да, да. Нам всё равно будет нужен Linux, но мы поставим его прямо внутрь Windows 10 (учтите, что эта возможность появилась, только в Windows 10). Не волнуйтесь, это не сложно.
Сначала нужно убедиться, что включён компонент «Подсистема Windows для Linux». Откройте диалог выбора компонентов Windows (нажмите Win+R и запустите приложение OptionalFeatures.exe).
Поставьте галочку напротив пункта «Подсистема Windows для Linux», если она не стоит, и нажмите «OK». Начнётся процесс установки. Если потребуется, перезагрузите компьютер.
Затем установим Linux. Для этого нужно перейти в Microsoft Store, найти нужный дистрибутив и установить его. Искать нужно по ключевому слову Linux.
Для компиляции кошелька SCC рекомендуется использовать Ubuntu 18.04. Значит, этот дистрибутив и выберем. Для установки, на странице приложения нажмите «Получить».
На запрос входа под учётной записью Windows можно не обращать внимание. Для установки бесплатных приложений входить под своей учётной записью не обязательно. Можно нажать здесь «Нет, спасибо».
После установки пункт меню для запуска Ubuntu 18.04 появится в меню «Пуск». Для удобства можно сразу закрепить его на начальном экране.
Теперь запустите Ubuntu 18.04. После первого запуска потребуется дополнительная настройка.
У меня, правда, Linux сначала сопротивлялся. Появлялась ошибка:
Я пытался перезапускать сервис LxssManager, но это не помогало. И ещё я где-то вычитал, что если выключить быструю загрузку Windows (в настройках электропитания), то такой ошибки не будет.
Но на моё счастье, при очередной попытке установка началась. Здесь нужно задать имя пользователя в системе Linux, которое не обязательно должно совпадать с именем пользователя в Windows. Введите здесь имя пользователя (в нижнем регистре) и нажмите клавишу Enter.
Затем введите пароль и нажмите Enter. Когда будете вбивать пароль, на экране ничего не будет происходить. Это нормально.
Затем ещё раз повторите пароль.
После этого всё будет успешно настроено.
Установка необходимых пакетов
Для установки необходимых пакетов последовательно выполните в Ubuntu 18.04 следующие 3 команды (для выполнения команд под администратором потребуется ввод пароля, который вы установили при настройке Linux) (на все вопросы отвечайте утвердительно):
Если вы хотите ещё сделать инсталлятор для Windows, то нужна будет библиотека NSIS. Для её установки выполните команду:
Для компиляции кошелька под ОС Windows также понадобятся инструменты MinGW. Чтобы скомпилировать кошелёк для 64-битной версии Windows установите пакет g++-mingw-w64-x86-64, выполнив команду:
А для компиляции 32-битной версии Windows, понадобятся другие два пакета. Для их установки выполните команду:
Если места на диске компьютера не жалко, можете установить все перечисленные выше пакеты.
Скачивание исходников
Так уж повелось, что в основном у каждой криптовалюты в открытую опубликованы исходники на GitHub. Не исключение и монета SCC. Нужные исходники есть здесь. Отсюда мы их и будем скачивать, но об этом чуть ниже.
В системе Linux, которую мы установили, сразу примонтированы логические диски системы Windows. Например, диск C: внутри Linux будет находиться по пути /mnt/c. Мне показалось удобным создать папку где-нибудь в Windows и загрузить в неё исходники, но так не удастся скомпилировать зависимости. Поверьте, я проверял.
Ещё сразу хочется отметить, что все текстовые файлы нужно забирать с сервера GitHub не меняя переносы LF (переносы LF принято использовать в Linux) на CRLF. Если вы будет использовать git для Windows, то, скорее всего, он настроен так, чтобы заменять LF на CRLF. Если файлы будут с переносами CRLF, то при компиляции у вас появится много синтаксических ошибок и в конце ошибка «make: *** No rule to make target 'builders/.mk'. Stop.», см. картинку:
Чтобы отключить замену, нужно выполнить следующую команду (работает и для Windows и для Linux):
Итак, разместим папку с проектом в домашней папке, которая является текущей после запуска Linux. У меня это папка /home/alex. Чтобы скачать в эту папку исходники выполните следующие команды:
Вот результат выполнения команд:
Ещё на сайте GitHub я увидел, что есть вторая версия кошелька, которая находится в отдельной ветке.
Если есть желание, то вы можете переключиться на эту ветку, чтобы скомпилировать 2-ю версию, но она пока находится в стадии Beta. Чтобы переключится на ветку 2.0, выполните команду:
Вот результат:
А как же теперь получить доступ к папке StakeCubeCoin, которая только что скачалась, из Windows? Очень просто. Есть два способа. Сначала расскажу про первый способ.
Откройте проводник, вбейте в строке адреса следующую строку и нажмите Enter:
%userprofile%\AppData\Local\Packages
Откроется папка C:\Users\ИМЯ_ПОЛЬЗОВАТЕЛЯ_WINDOWS\AppData\Local\Packages, где ИМЯ_ПОЛЬЗОВАТЕЛЯ – это имя пользователя Windows. Найдите в открывшейся папке вложенную папку, в которую установлен Linux. Для Ubuntu 18.04 у меня на компьютере – это была папка CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc, см. картинку.
Внутри этой папки найдите папку LocalState и в ней папку rootfs. Это и будет корень файловой системы Linux. В результате путь примерно такой:
Ну а в папке rootfs уже не проблема найти домашнюю папку и в ней папку StakeCubeCoin. У меня в Linux-е - это папка /home/alex/StakeCubeCoin, значит в Windows – это получится папка:
Чтобы быстро добираться до этой папки можно сразу сделать ярлык или добавить ссылку на папку в группу «Быстрый доступ» на панели навигации проводника. Я добавил ссылку на папку rootfs. Для добавления просто перетащите папку в группу «Быстрый доступ».
Единственная проблема, которая может у вас возникнуть, если вы будете изменять файлы в Windows, - после изменения вы не сможете получить доступ изменённым к файлам в Linux. От этого спасает команда:
И второй способ добраться до файлов Linux... вбейте в проводнике в строке адреса следующую строку и нажмите Enter:
\\wsl$
Если консолька Ubuntu 18.04 запущена то вы увидите её как сетевой ресурс, см. картинку:
Зайдите внутрь ресурса Ubuntu-18.04 и вы увидите все файлы системы Linux.
Компиляция кошелька для 64-битной Windows
Для компиляции последовательно выполните следующие команды в консоли Linux:
На запрос выберите опцию с компилятором posix. У меня на картинке – это цифра 1.
Затем последовательно выполните следующие команды:
После того как компиляция будет успешно завершена, это будет выглядеть вот так:
Получившийся исполняемый файл stakecube-qt.exe можно будет найти в папке /src/qt внутри папки StakeCubeCoin. В Windows – это будет папка:
Теперь проведём эксперимент и запустим программу stakecube-qt.exe. Я положил файл stakecube-qt.exe в папку C:\StakeCubeCore и запустил. После запуска установил ту же папку, где будут расположены данные:
После этого кошелёк стартовал, подключился к сети и начал синхронизировать данные.
Если кошелёк долго не может подключиться к сети, ему можно помочь. Для этого нужно добавить официальные ноды в конфигурационный файл stakecube.conf, а именно, добавить в этот следующие файл строки:
И после этого перезапустить кошелёк.
Компиляция кошелька для 32-битной Windows
Для компиляции последовательно выполните следующие команды в консоли Linux:
На запрос выберите опцию с компилятором posix. У меня на картинке – это цифра 1.
Затем последовательно выполните следующие команды:
После завершения компиляции моя консоль выглядела вот так:
Получившийся исполняемый файл stakecube-qt.exe можно найти в папке /src/qt внутри папки StakeCubeCoin. В Windows – это будет папка:
Получившийся исполняемый файл я проверил под 32-битной версией Windows 7. Исполняемый файл я скопировал в папку C:\StakeCubeCore. Запустился кошелёк нормально. После запуска появилось окно настроек, такое же, как и в версии для 64-битной Windows. Я выбрал ту же папку, куда был скопирован исполняемый файл.
После настройки, кошелёк запустился и начал синхронизировать блоки.
Если кошелёк долго не может подключиться к сети, ему можно помочь. Для этого нужно добавить официальные ноды в конфигурационный файл stakecube.conf, а именно, добавить в этот следующие файл строки:
И после этого перезапустить кошелёк.
Создание дистрибутива
Если вам хочется сделать дистрибутив, то после компиляции нужно выполнить следующую команду:
Вот результат, который виден после создания дистрибутива в консоли:
В папке StakeCubeCoin после этого вы найдёте дистрибутив - файл stakecube-1.0.0-win64-setup.exe для 64-битной Windows или файл stakecube-1.0.0-win32-setup.exe для 32-битной Windows:
Я запустил дистрибутив. Появилось приветствие. Всё в порядке. Проверять установку я не стал.
Итог
Как видите, скомпилировать криптовалютный кошелёк на своём компьютере под управлением Windows 10 не так уж и сложно. Как обойти пару подводных камней я написал, так что, думаю, справиться сможет каждый. Если узнаете как обойти ещё какие-нибудь подводные камни или хотите написать о каких-нибудь фишках для компиляции, оставляйте комментарии. Ну и не забудьте понакомиться с пулом StakeCube, для которого и была создана монета SCC.
Источники
https://github.com/stakecube/StakeCubeCoin/blob/master/doc/build-windows.md
https://github.com/bitcoin/bitcoin/blob/master/doc/build-windows.md
https://docs.microsoft.com/ru-ru/windows/wsl/install-win10
https://www.howtogeek.com/261383/how-to-access-your-ubuntu-bash-files-in-windows-and-your-windows-system-drive-in-bash/
Tags: Криптовалюты SCC StakeCube Учебники по программированию
Комментарии
Этот способ применим для биткоина и форков биткоина.
RSS лента комментариев этой записи