Страница 1 из 7

EmerCoin / EMC

Добавлено: 23 фев 2023, 20:02
Olej
Криптовалюта (блокчейн) EmerCoin / EMC ...
Тема переплыла отсюда: OpenNIC DNS и EmerCoin - там она слишком перегружена...

Как денежная единица, средство рассчётов, EmerCoin вряд ли интересен...
Его стоимоть на сегодня - https://emercoin.com/ru/rate :
Emercoin (EMC) 0,015131 USD
Или Минфин (Украины :!: ):
Каталог криптобирж
EmerCoin 0,5483 ₴
Изображение
Интересен EmerCoin тем что:
- за ним стоят очень приличного уровня ...
- русскоязычные разработчики ...
- и что использовать его можно и нужно именно для попутного хранения в блокчейне критической информации ...
- в частности: регистрация доменных имён в доменных зонах:
В настоящее время система поддерживает четыре корневых зоны:
*.coin — всё связанное с монетами и коммерцией;
*.emc — всё связанное с проектом EmerCoin;
*.lib — От слов Library и Liberty — то есть библиотеки и свобода;
*.bazar — различные сервисы купли/продажи.
Но в этой теме будет только про то, а). где взять ПО под EmerCoin (в частности кошелёк), б). как собрать ПО из исходников (если захочется), в). как установить, г). как конфигурировать.

EmerCoin / EMC

Добавлено: 23 фев 2023, 20:35
Olej
Olej писал(а):
23 фев 2023, 20:02
а). где взять ПО под EmerCoin (в частности кошелёк)
Где и что берём :?:
Берём актуальную, на сегодня, версию: v0.7.11emc
Можем брать готовую бинарную сборку, или собрать из исходников.

Для эксплуатации, использования, вполне годится бинарная сборка. Берём здесь: https://sourceforge.net/projects/emerco ... 0.7.11emc/:

Код: Выделить всё

emercoin-0.7.11-darwin-arm64.dmg 	2022-01-09 	6.0 MB 	
emercoin-0.7.11-win64-setup.exe 	2022-01-09 	11.7 MB 	
emercoin-qt-0.7.11-win64.exe 	2022-01-09 	32.2 MB 	
emercoin-0.7.11-x86_64-linux-gnu.tar.bz2 	2022-01-09 	17.0 MB 	
emercoin-0.7.11-win64.tar.bz2 	2022-01-09 	17.8 MB 	
emercoin-0.7.11-1-darwin-amd64.pkg.tar.gz 	2022-01-09 	14.9 MB 	
emercoin-qt-0.7.11-win32.exe 	2022-01-09 	34.5 MB 	
emercoin-0.7.11-7-armhf.deb 	2022-01-09 	6.0 MB 	
emercoin-0.7.11-win32.tar.bz2 	2022-01-09 	18.0 MB
Ну, меня то интересует только Linux:

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin$ ls -l emercoin-0.7.11-x86_64-linux-gnu.tar.bz2 
-rw-rw-r-- 1 olej olej 16957841 фев 22 10:55 emercoin-0.7.11-x86_64-linux-gnu.tar.bz2
Разархивировали:

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin$ tar -xjf emercoin-0.7.11-x86_64-linux-gnu.tar.bz2

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin$ tree emercoin-0.7.11-x86_64-linux-gnu
emercoin-0.7.11-x86_64-linux-gnu
├── emercoin-cli
├── emercoind
└── emercoin-qt

0 directories, 3 files

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin$ ls -l emercoin-0.7.11-x86_64-linux-gnu
итого 43180
-rwxr-xr-x 1 olej olej  1988640 янв  3  2022 emercoin-cli
-rwxr-xr-x 1 olej olej  9079144 янв  3  2022 emercoind
-rwxr-xr-x 1 olej olej 33142936 янв  3  2022 emercoin-qt
Всё готово к запуску...

EmerCoin / EMC

Добавлено: 23 фев 2023, 21:23
Olej
Olej писал(а):
23 фев 2023, 20:35
Всё готово к запуску...
Но тут есть одно "но"...
После запуска кошелёк синхронизирует борчейн за .. 7-8 лет. А это объём (забегая вперёд), как минимум:

Код: Выделить всё

olej@R420:/mnt/sdc3$ du -hs
1,9G	.
И "палить" под этот объём SSD, а тем более M2 NVME, в /home - дело дурное.
Поэтому лучше подготовить заранее есто (растущее) под блокчейн ... например, подмонтировав куда-то свободный раздел HDD:

Код: Выделить всё

olej@R420:/mnt/sdc3$ ls -l ~/sd*
lrwxrwxrwx 1 olej olej 9 фев 22 16:34 /home/olej/sdc2 -> /mnt/sdc2
lrwxrwxrwx 1 olej olej 9 фев 22 16:34 /home/olej/sdc3 -> /mnt/sdc3

Код: Выделить всё

olej@R420:/mnt/sdc3$ ls -lL ~/sd*
/home/olej/sdc2:
итого 16
drwx------ 2 olej olej 16384 мая 20  2022 lost+found

/home/olej/sdc3:
итого 20
drwxrwxr-x 7 olej olej  4096 фев 23 20:03 emercoin2
drwx------ 2 olej olej 16384 ноя 17 18:31 lost+found

Код: Выделить всё

olej@R420:/mnt/sdc3$ du -hs /mnt/sdc3
1,9G	/mnt/sdc3
Далее ... а как заставить его туда пойти?

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin/emercoin-0.7.11-x86_64-linux-gnu$ ./emercoin-qt -?
libpng warning: iCCP: known incorrect sRGB profile
Emercoin Core версия v0.7.11emc (64-бит)
Использование:
  emercoin-qt [параметры командной строки]                     

Параметры:

  -?
       Вывести эту справку и выйти

  -version
       Написать версию и выйти
...
  -conf=<file>
       Указать конфигурационный файл (по
       умолчанию: emercoin.conf)

  -datadir=<dir>
       Задать каталог данных
...
Смотрим что у нас есть:

Код: Выделить всё

olej@R420:~/.config/Emercoin$ cat ~/.config/Emercoin/Emercoin-Qt.conf | grep DataDir
strDataDir=/home/olej/sdc3/emercoin2
(обратим внимание, что HELP - неправ: не emercoin.conf, а Emercoin-Qt.conf :-o

EmerCoin / EMC

Добавлено: 23 фев 2023, 21:27
Olej
Olej писал(а):
23 фев 2023, 21:23
Далее ...
И запуск:
Изображение
А далее:
Изображение
Идёт синхронизация блокчейна ... за 7-8 последних лет.
У меня это на 40 ядерном сервере промышленного уровня заняло ~2 часа.
У разработчиков проекта (по их словам) на весьма хороших десктопах это занимает ~3.5 часов.
В итоге:
Снимок экрана от 2023-02-23 20-27-53.png
Снимок экрана от 2023-02-23 20-27-53.png (54.57 КБ) 610 просмотров

EmerCoin / EMC

Добавлено: 23 фев 2023, 21:36
Olej
Olej писал(а):
23 фев 2023, 21:27
В итоге:
Создав новый кошелёк в "Файл" -> "Адрес получения" - находим свой EMC-address на который нам будут пересылать денежки :!:
Снимок экрана от 2023-02-23 20-32-55.png
Снимок экрана от 2023-02-23 20-32-55.png (33.14 КБ) 609 просмотров

EmerCoin / EMC

Добавлено: 24 фев 2023, 00:54
Olej
Чтобы дальше с этим что-то делать и не начудить - важно выяснить где находится база данных кошелька и как можно распорядиться этим местом размещения...

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin/emercoin-0.7.11-x86_64-linux-gnu$ ./emercoin-qt -?
libpng warning: iCCP: known incorrect sRGB profile
Emercoin Core версия v0.7.11emc (64-бит)
Использование:
  emercoin-qt [параметры командной строки]                     

Параметры:

  -?
       Вывести эту справку и выйти

  -version
       Написать версию и выйти
...
  -conf=<file>
       Указать конфигурационный файл (по
       умолчанию: emercoin.conf)

  -datadir=<dir>
       Задать каталог данных
...
И множество ещё других параметров, но нас интересуют пока эти.
Конфигфайл по умолчанию (а не так как указано в help!):

Код: Выделить всё

olej@R420:~/.config/Emercoin$ ls -l ~/.config/Emercoin/
итого 4
-rw-rw-r-- 1 olej olej 1012 фев 23 16:47 Emercoin-Qt.conf
И в нём путь к базе данных:

Код: Выделить всё

olej@R420:~/.config/Emercoin$ cat ~/.config/Emercoin/Emercoin-Qt.conf | grep DataDir
strDataDir=/home/olej/sdc3/emercoin2

Код: Выделить всё

olej@R420:~/.config/Emercoin$ ls -l ~/sdc3
lrwxrwxrwx 1 olej olej 9 фев 22 16:34 /home/olej/sdc3 -> /mnt/sdc3

olej@R420:~/.config/Emercoin$ ls -lL ~/sdc3
итого 20
drwxrwxr-x 7 olej olej  4096 фев 23 23:48 emercoin2
drwx------ 2 olej olej 16384 ноя 17 18:31 lost+found

Код: Выделить всё

olej@R420:~/.config/Emercoin$ du -hs /mnt/sdc3/emercoin2
1,2G	/mnt/sdc3/emercoin2

Код: Выделить всё

olej@R420:~/.config/Emercoin$ mount | grep /dev/sdc3
/dev/sdc3 on /mnt/sdc3 type ext4 (rw,nosuid,nodev,noexec,relatime,user)
Вот теперь мы сможем распоряжаться данными для разных инсталляций.

EmerCoin / EMC

Добавлено: 24 фев 2023, 01:25
Olej
Olej писал(а):
24 фев 2023, 00:54
Вот теперь мы сможем распоряжаться данными для разных инсталляций.
Olej писал(а):
23 фев 2023, 20:35
или собрать из исходников.
Исходники берём из GIT репозитория проекта:

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin$ pwd
/home/olej/2023/own.WORK/DNS/EmerCoin

olej@R420:~/2023/own.WORK/DNS/EmerCoin$ git clone git@github.com:emercoin/emercoin.git
Клонирование в «emercoin»...
remote: Enumerating objects: 147918, done.
remote: Counting objects: 100% (9/9), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 147918 (delta 1), reused 9 (delta 1), pack-reused 147909
Получение объектов: 100% (147918/147918), 129.16 МиБ | 1.97 МиБ/с, готово.
Определение изменений: 100% (103956/103956), готово.

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin$ du -hs emercoin
162M	emercoin

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin$ ls -ld emercoin
drwxrwxr-x 15 olej olej 4096 фев 24 00:10 emercoin

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin$ cd emercoin
И тут очень важная вещь: нам нужно переключиться и собирать ту ветвь (версию), которая последняя стабильная, и которую мы видели в бинарной сборке, и это на сегодня 0.7.11emc:

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin/emercoin$ git checkout tags/v0.7.11emc
Примечание: переключение на «tags/v0.7.11emc».

Вы сейчас в состоянии «отсоединённого указателя HEAD». Можете осмотреться,
внести экспериментальные изменения и зафиксировать их, также можете
отменить любые коммиты, созданные в этом состоянии, не затрагивая другие
ветки, переключившись обратно на любую ветку.

Если хотите создать новую ветку для сохранения созданных коммитов, можете
сделать это (сейчас или позже), используя команду switch с параметром -c.
Например:

  git switch -c <новая-ветка>

Или отмените эту операцию с помощью:

  git switch -

Отключите этот совет, установив переменную конфигурации
advice.detachedHead в значение false

HEAD сейчас на 05817b866 Merge pull request #108 from 0pcom/0.7.11

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin/emercoin$ git branch
* (HEAD отделён на v0.7.11emc)
  master
Вот теперь можем переходить к конфигурированию и сборке.

EmerCoin / EMC

Добавлено: 24 фев 2023, 01:30
Olej
Olej писал(а):
24 фев 2023, 01:25
Вот теперь можем переходить к конфигурированию и сборке.

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin/emercoin$ ls -l
итого 164
-rwxrwxr-x  1 olej olej   527 фев 24 00:22 autogen.sh
drwxrwxr-x  2 olej olej  4096 фев 24 00:10 bin
drwxrwxr-x  3 olej olej  4096 фев 24 00:10 build-aux
-rwxrwxr-x  1 olej olej   497 фев 24 00:22 confFreeBSD.sh
-rw-rw-r--  1 olej olej 42501 фев 24 00:22 configure.ac
drwxrwxr-x 19 olej olej  4096 фев 24 00:22 contrib
-rw-rw-r--  1 olej olej 10902 фев 24 00:22 CONTRIBUTING.md
-rw-rw-r--  1 olej olej 36401 фев 24 00:22 COPYING
drwxrwxr-x  6 olej olej  4096 фев 24 00:22 depends
drwxrwxr-x  5 olej olej  4096 фев 24 00:22 doc
-rw-rw-r--  1 olej olej   161 фев 24 00:10 INSTALL.md
-rw-rw-r--  1 olej olej   295 фев 24 00:10 libbitcoinconsensus.pc.in
-rw-rw-r--  1 olej olej  8895 фев 24 00:22 Makefile.am
-rwxrwxr-x  1 olej olej    43 фев 24 00:10 push.sh
drwxrwxr-x  4 olej olej  4096 фев 24 00:22 qa
-rw-rw-r--  1 olej olej  3787 фев 24 00:22 README.md
drwxrwxr-x  6 olej olej  4096 фев 24 00:22 share
drwxrwxr-x 24 olej olej  4096 фев 24 00:22 src
drwxrwxr-x  3 olej olej  4096 фев 24 00:22 test

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin/emercoin$ ./autogen.sh
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
libtoolize: copying file 'build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'build-aux/m4'.
libtoolize: copying file 'build-aux/m4/libtool.m4'
libtoolize: copying file 'build-aux/m4/ltoptions.m4'
libtoolize: copying file 'build-aux/m4/ltsugar.m4'
libtoolize: copying file 'build-aux/m4/ltversion.m4'
libtoolize: copying file 'build-aux/m4/lt~obsolete.m4'
configure.ac:45: installing 'build-aux/compile'
configure.ac:45: installing 'build-aux/config.guess'
configure.ac:45: installing 'build-aux/config.sub'
configure.ac:28: installing 'build-aux/install-sh'
configure.ac:28: installing 'build-aux/missing'
Makefile.am: installing 'build-aux/depcomp'
parallel-tests: installing 'build-aux/test-driver'
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
libtoolize: copying file 'build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'build-aux/m4'.
libtoolize: copying file 'build-aux/m4/libtool.m4'
libtoolize: copying file 'build-aux/m4/ltoptions.m4'
libtoolize: copying file 'build-aux/m4/ltsugar.m4'
libtoolize: copying file 'build-aux/m4/ltversion.m4'
libtoolize: copying file 'build-aux/m4/lt~obsolete.m4'
configure.ac:28: warning: The macro `AC_PROG_CC_C89' is obsolete.
configure.ac:28: You should run autoupdate.
./lib/autoconf/c.m4:1652: AC_PROG_CC_C89 is expanded from...
configure.ac:28: the top level
configure.ac:10: installing 'build-aux/compile'
configure.ac:5: installing 'build-aux/config.guess'
configure.ac:5: installing 'build-aux/config.sub'
configure.ac:9: installing 'build-aux/install-sh'
configure.ac:9: installing 'build-aux/missing'
Makefile.am: installing 'build-aux/depcomp'
parallel-tests: installing 'build-aux/test-driver'
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
libtoolize: copying file 'build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'build-aux/m4'.
libtoolize: copying file 'build-aux/m4/libtool.m4'
libtoolize: copying file 'build-aux/m4/ltoptions.m4'
libtoolize: copying file 'build-aux/m4/ltsugar.m4'
libtoolize: copying file 'build-aux/m4/ltversion.m4'
libtoolize: copying file 'build-aux/m4/lt~obsolete.m4'
configure.ac:449: warning: $as_echo is obsolete; use AS_ECHO(["message"]) instead
lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
build-aux/m4/ax_pthread.m4:88: AX_PTHREAD is expanded from...
configure.ac:449: the top level
configure.ac:77: installing 'build-aux/compile'
configure.ac:27: installing 'build-aux/config.guess'
configure.ac:27: installing 'build-aux/config.sub'
configure.ac:37: installing 'build-aux/install-sh'
configure.ac:37: installing 'build-aux/missing'
Makefile.am:12: warning: user variable 'GZIP_ENV' defined here ...
/usr/share/automake-1.16/am/distdir.am: ... overrides Automake variable 'GZIP_ENV' defined here
src/Makefile.am: installing 'build-aux/depcomp'
src/Makefile.am:507: warning: user target '.mm.o' defined here ...
/usr/share/automake-1.16/am/depend2.am: ... overrides Automake target '.mm.o' defined here
parallel-tests: installing 'build-aux/test-driver'

EmerCoin / EMC

Добавлено: 24 фев 2023, 01:48
Olej
Olej писал(а):
24 фев 2023, 01:25
переходить к конфигурированию
Но вот тут нас поджижает засада:

Код: Выделить всё

olej@R420:~/2023/own.WORK/DNS/EmerCoin/emercoin$ ./configure --disable-dependency-tracking --disable-tests --disable-util-tx --disable-gui-tests --enable-bip70 --disable-hardening --disable-debug 
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
...
checking for MSG_NOSIGNAL... yes
checking for mallopt M_ARENA_MAX... yes
checking for visibility attribute... yes
checking for Berkeley DB C++ headers... default
configure: error: Found Berkeley DB other than 4.8, required for portable wallets (--with-incompatible-bdb to ignore or --disable-wallet to disable wallet functionality)
P.S. А откуда я взял такую строку опций ./configure ? Её мне подсказали непосредственно разработчики...

EmerCoin / EMC

Добавлено: 24 фев 2023, 01:54
Olej
Olej писал(а):
24 фев 2023, 01:48
Но вот тут нас поджижает засада:
А засада состоит в том, что практически все проекты криптовалют требуют версию Berkeley DB 4.8 - это уже традиция проектов блокчейна.
А у нас в системе установлено ... по умолчанию, автоматически или по зависимостям - 5.3.28:

Код: Выделить всё

olej@R420:~$ aptitude search bdb | grep ^i | grep Berkeley
i  libdb5.3 - динамические библиотеки базы данных Berkeley v5.3
i A libdb5.3++ - Berkeley v5.3 Database Libraries for C++ [runtime]
i  libdb5.3++-dev - Berkeley v5.3 Database Libraries for C++ [development]
i A libdb5.3-dev - Berkeley v5.3 Database Libraries [development]

Код: Выделить всё

olej@R420:~$ aptitude show libdb5.3++-dev
Пакет: libdb5.3++-dev
Версия: 5.3.28+dfsg1-0.8ubuntu3
Новый: да
Состояние: установлен
Установлен автоматически: нет
Приоритет: дополнительный
Раздел: libdevel
Сопровождающий: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Архитектура: amd64
Размер в распакованном виде: 3.360 k
Зависит: libdb5.3++ (= 5.3.28+dfsg1-0.8ubuntu3), libdb5.3-dev (= 5.3.28+dfsg1-0.8ubuntu3), libdb5.3 (= 5.3.28+dfsg1-0.8ubuntu3)
Конфликтует: libdb4.6++-dev, libdb4.7++-dev, libdb4.8++-dev, libdb5.1++-dev, libdb5.2++-dev, libdb5.3++-dev:i386
Описание: Berkeley v5.3 Database Libraries for C++ [development]
 This is the development package which contains headers and static libraries for the Berkeley v5.3 database library.  This is only for programs which will use the C++ interface.
Домашняя страница: http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html
P.S. Можно собрать и так, добавив в ./configure опцию --with-incompatible-bdb - я делал так - и получить работоспособные версии приложений. Но они будут несовместимы и непереносимы с другими сборками, другими компьютерами и другими операционными системами по форматам БД :!:

Об этой проблеме достаточно много пишут в обсуждениях:
How to install Berkeley DB 4.8 on Linux?
Таким образом, наличие более новой версии BerkeleyDB является проблемой только в том случае, если вы хотите использовать свой wallet.dat в другой системе, а эта другая система использует BerkeleyDB 4.8 — как в случае с исполняемыми файлами bitcoind, которые можно загрузить из самого проекта.

Но если вы используете кошелек только в своей собственной системе или, если вы переносите его, вы также используете систему с более новой версией BerkeleyDB, то проблем быть не должно.
How to install libdb4.8++-dev or equivalent on 13.10?
Однако «Upstream Bitcoin считает db-4.8 единственной поддерживаемой версией. Известно, что 5.1 работает, но базы данных несовместимы с официальными сборками, созданными с помощью db-4.8».