Перейти к содержимому

YoBit.Net

Фотография

Создание своего Fork-а на основе Dash [building windows 10]


Сообщений в теме: 79

#1 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 17 May 2017 - 13:21

Всем доброго дня.

Данная тема уже была на форуме, но она устарела и уже не актуальна.

Данный маунал только для ознакомления, в момент разработки, репозиторий может измениться и вы не сможете скомпилировать свой форк.

 

Пункты:

1) Установка необходимого софта

2) Настройка своего форка

3) Компиляция в windwos 10

 

Необходимый софт:

  • Git - я работаю из CMD так что вы можете взять любой с GUI
  • atom или notepad ++
  • Windwos 10

 

Настройка окружения:

В windwos 10 добавлена возможность работы в Linux системе, для разработчиков. Так что мы можем без использования виртуальных машин тестировать и работать в linux системе (Ubuntu: замечу что отсутствуют определенные функции, больше информации в мать часте)

Установка:

Пуск - поиск - включение или отключение компонентов windows 

находим пункт:

Подсистема Windwos для Linux (бета-версия)

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

 

Предположим вы уже скачаи git, зарегистрированы в Github - делам форк данного репозитория:

https://github.com/microcrm-online/dash.git

По чему этого? Эта версия Dash на момент написания гайда, и я ее не собираюсь редактировать. Так что из этой версии вы всегда сможете собрать свой форк по этому гайду.

 

Подготовка к редактированию форка:

  1. Создайте папку git (желательно в корне диска, вам будет удобней)
  2. Переходим в Linux (ubuntu), запустите CMD водим:
C:\Users\dobryj>bash

Создайте пользователя и пароль.

 

Дальше мы работаем только в linux: bash терминале.

Водим данные строки:

dobryj@win10:/mnt/c/users/dobryj$cd /mnt/(бука вашего диска)/git/

Установим необходимые программы в ubuntu:

dobryj@win10:/mnt/d/git$sudo apt-get install g++-mingw-w64-i686 mingw-w64-i686-dev g++-mingw-w64-x86-64 mingw-w64-x86-64-dev git curl python-dev python-pip python2.7-dev libssl-dev pip automake 
#система попросить вести пароль, который вы вели при создании пользователя

Скачиваем ваш форк:

dobryj@win10:/mnt/d/git$git clone https://github.com/microcrm-online/dash.git 
#я беру свой по умолчанию, замените адрес на свой

Клонируем необходимые для настройки программы:

#генератор генезис
dobryj@win10:/mnt/d/git$git clone https://github.com/lhartikk/GenesisH0.git
dobryj@win10:/mnt/d/git$git clone https://github.com/lhartikk/xcoin-hash

Устанавливаем:

dobryj@win10:/mnt/d/git$sudo pip install scrypt construct==2.5.2 && cd xcoin-hash && sudo python setup.py install && cd ..

Создадим папки предварительных данных и сразу перейдем к генерации ключей для вашего форка

dobryj@win10:/mnt/d/git$ mkdir -p dev/cert && cd dev/cert

Нам понадобится 5 ключей

dobryj@win10:/mnt/d/git/dev/cert&openssl ecparam -genkey -name secp256r1 -out main.pem
dobryj@win10:/mnt/d/git/dev/cert&openssl ecparam -genkey -name secp256r1 -out mainalert.pem
dobryj@win10:/mnt/d/git/dev/cert&openssl ecparam -genkey -name secp256r1 -out mainspork.pem
dobryj@win10:/mnt/d/git/dev/cert&openssl ecparam -genkey -name secp256r1 -out testnetalert.pem
dobryj@win10:/mnt/d/git/dev/cert&openssl ecparam -genkey -name secp256r1 -out testnetspork.pem

Зашипим ключи в txt файлы, для удобства чтения:

dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in main.pem -noout –text > main.text
dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in mainalert.pem -noout –text > mainalert.text
dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in mainspork.pem -noout –text > mainspork.text
dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in testnetalert.pem -noout –text > testnetalert.text
dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in testnetspork.pem -noout –text > testnetspork.text

Создадим hex ключей

dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in main.pem -noout –text > main.hex
dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in mainalert.pem -noout –text > mainalert.hex
dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in mainspork.pem -noout –text > mainspork.hex
dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in testnetalert.pem -noout –text > testnetalert.hex
dobryj@win10:/mnt/d/git/dev/cert&openssl ec -in testnetspork.pem -noout –text > testnetspork.hex

Теперь запускам наш текстовый редактор, я пользуюсь Atom - по этому на его примере и буду все объяснять.

Добавим нашу папку git в проекты:

File - Add Project Folder (выбираем папку на диске git)

В папке /git/cert/ присудствуют наши ключи: *.pem, *.txt, *.hex

В файлах *.txt приведем все к такому виду:

# main.txt
# удаляем все ":" 
# и убираем пробелы
Private-Key (256 bit)
priv
    008bea3ba6da55953eaf286fd0db3f9d8d85c3cc886cf9cb1112d03d6d49c4f240
pub
    040a5493b8e595e341847a860c8d01ac192a9abc7f649db06a9c5ff310d63247393f67c1e4889fbd355e2620013ad2cf73597163f735616a27b2a77a5689c53852
ASN1 OID prime256v1

Создадим еще один файл наших паблик ключей, для последующей генерации генезис pub.txt:

#main
pub
040a5493b8e595e341847a860c8d01ac192a9abc7f649db06a9c5ff310d63247393f67c1e4889fbd355e2620013ad2cf73597163f735616a27b2a77a5689c53852

#mainalert
pub
043050ce8f725fc9c3adf29ed5bf99414fa6be0ec36cbb99b475cc48770234ec92e8667d6b28708f870a922250b31d5a095679e19a902638788ea95ed5c66c75de

# и т.д.

Для генерации гензис требуется ключевая фраза и дата-время, что мы и сейчас сделаем:

Моя ключевая фраза:

"start test dash fork 17/05/2017 18/00" 

Для генерации даты запуска перейдем на: 

http://www.unixtimestamp.com/index.php

В Timestamp Converter пишем будущую время и дату запуска, нажимаем Convert.

У меня получилось: 1495044000

 

Указывайте правильную дату и время, если вы запустите кошелек, более чем через час, кошелек не синхронизируется. 

 

Возвращаемся в наш генезис:

dobryj@win10:/mnt/d/git/dev/cert&cd /mnt/d/git/GenesisH0

Для генерации генезиса нам понадобится 3 команды, для Main сети, Testnet сети и Regnet сети.

Перед этим создадим еще один текстовый файл Genesis.txt в папке cert

Для 3 сетей нам понадобятся 3 временные зоны, можно просто заменить 0 в конце, получится:

main: 1495044000
testnet: 1495044001
regnet: 1495044002 

Продолжение следующим постом.


Сообщение отредактировал Dobryj: 22 May 2017 - 13:13

  • 6

Что-то не знаешь, учи ман часть, не понял, спроси.


#2 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 17 May 2017 - 13:46

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

#main
dobryj@win10:/mnt/d/git/GenesisH0$python genesis.py -a X11 -z "start test dash fork 17/05/2017 18/00" -t 1495044000 -p "040a5493b8e595e341847a860c8d01ac192a9abc7f649db06a9c5ff310d63247393f67c1e4889fbd355e2620013ad2cf73597163f735616a27b2a77a5689c53852"

#testnet
dobryj@win10:/mnt/d/git/GenesisH0$python genesis.py -a X11 -z "start test dash fork 17/05/2017 18/00" -t 1495044001 -p "040a5493b8e595e341847a860c8d01ac192a9abc7f649db06a9c5ff310d63247393f67c1e4889fbd355e2620013ad2cf73597163f735616a27b2a77a5689c53852"

#regnet
# в конце команды добавлен -b 0x207fffff –n 2
dobryj@win10:/mnt/d/git/GenesisH0$python genesis.py -a X11 -z "start test dash fork 17/05/2017 18/00" -t 1495044002 -p "040a5493b8e595e341847a860c8d01ac192a9abc7f649db06a9c5ff310d63247393f67c1e4889fbd355e2620013ad2cf73597163f735616a27b2a77a5689c53852" -b 0x207fffff –n 2

На каждую команду мы получим следующий ответ:

04ffff001d01042573746172742074657374206461736820666f726b2031372f30352f323031372031382f3030
algorithm: X11
merkle hash: 093f2b2c7583aeb09b465a8fd5fc9c238ba9cfb34ef5291a9acc336ce91396ce
pszTimestamp: start test dash fork 17/05/2017 18/00
pubkey: 040a5493b8e595e341847a860c8d01ac192a9abc7f649db06a9c5ff310d63247393f67c1e4889fbd355e2620013ad2cf73597163f735616a27b2a77a5689c53852
time: 1495044000
bits: 0x1e0ffff0
Searching for genesis hash..
21357.0 hash/s, estimate: 55.9 hgenesis hash found!
nonce: 4083650
genesis hash: 0000049e851fd46a989f744a54b2b53fbb2a52d9123da7bcbe62a678ff522126

Изменим наш файл genesis.txt и запишем туда ответ (выделите в cmd строчки и нажмите enter) в таком виде:

#main
merkle hash: 093f2b2c7583aeb09b465a8fd5fc9c238ba9cfb34ef5291a9acc336ce91396ce
pszTimestamp: start test dash fork 17/05/2017 18/00
pubkey: 040a5493b8e595e341847a860c8d01ac192a9abc7f649db06a9c5ff310d63247393f67c1e4889fbd355e2620013ad2cf73597163f735616a27b2a77a5689c53852
time: 1495044000
bits: 0x1e0ffff0
nonce: 4083650
genesis hash: 0000049e851fd46a989f744a54b2b53fbb2a52d9123da7bcbe62a678ff522126

#testnet
.....

#regnet
.....

После того как все сгенерировано, мы можем приступить к редактированию исходников.

В Atom открываем папку "dash".

 

Я не буду расписывать как менять название форка, скажу только что лучше это делать в такой последовательности: Dash, DASH, dash и Dashpay, DASHPAY, dashpay. Но лучше ручками везде все заменить.

 

Редактируем src\chainparams.cpp

static CBlock CreateGenesisBlock(uint32_t nTime, uint32_t nNonce, uint32_t nBits, int32_t nVersion, const CAmount& genesisReward)
{
    const char* pszTimestamp = "start test dash fork 17/05/2017 18/00"; 
    const CScript genesisOutputScript = CScript() << ParseHex("040a5493b8e595e341847a860c8d01ac192a9abc7f649db06a9c5ff310d63247393f67c1e4889fbd355e2620013ad2cf73597163f735616a27b2a77a5689c53852") << OP_CHECKSIG;
    return CreateGenesisBlock(pszTimestamp, genesisOutputScript, nTime, nNonce, nBits, nVersion, genesisReward);
}

Сообщение отредактировал Dobryj: 18 May 2017 - 13:27

  • 1

Что-то не знаешь, учи ман часть, не понял, спроси.


#3 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 17 May 2017 - 17:22

genesis = CreateGenesisBlock(1495044000, 4083650, 0x1e0ffff0, 1, 50 * COIN);
consensus.hashGenesisBlock = genesis.GetHash();
assert(consensus.hashGenesisBlock == uint256S("0x0000049e851fd46a989f744a54b2b53fbb2a52d9123da7bcbe62a678ff522126"));
assert(genesis.hashMerkleRoot == uint256S("0x093f2b2c7583aeb09b465a8fd5fc9c238ba9cfb34ef5291a9acc336ce91396ce"));

124 строка: это наши "time", "nonce", "bits" - Main сети из genesis.txt 

126 строка: это наш hash\хеш genesis блока main сети.

127 строка: это merkle хеш main сети.

 

Аналогично сделаем изменение для testnet и regnet из genesis.txt

genesis = CreateGenesisBlock(1495022401, 817368, 0x1e0ffff0, 1, 50 * COIN);
consensus.hashGenesisBlock = genesis.GetHash();
assert(consensus.hashGenesisBlock == uint256S("0x000000216344c50e38ed7a0373e0ae279348b91cb96449eb719dd76d4ab0505c"));
assert(genesis.hashMerkleRoot == uint256S("0xa6e51cb3d1ed62816c57663db61b23dca259072fc89b40f6ae782cff816443d9"));
genesis = CreateGenesisBlock(1495022402, 2, 0x207fffff, 1, 50 * COIN);
consensus.hashGenesisBlock = genesis.GetHash();
assert(consensus.hashGenesisBlock == uint256S("0x5e84e86aeeba22c8ef2a09389518cd7e77fb78ff368db52ea73c36384f5e839e"));
assert(genesis.hashMerkleRoot == uint256S("0xa6e51cb3d1ed62816c57663db61b23dca259072fc89b40f6ae782cff816443d9"));

Нумерация строк может немного отличаться.

 

На 226 строке меняем на свои DNS-сы или удаляем с помощью vSeeds.clear(); (убираем все dns и оставляем vSeeds.clear() ;)

strSporkPubKey = "04b37bdec4bf40649e4022c701af318bbf0e9c4483408485fe0a6c6f3fbe5369ca28b290ee1af990ba0c4828e3c8159ddcc1897496099ce354f7ee9bd42dd33c5e";
strMasternodePaymentsPubKey = "04b37bdec4bf40649e4022c701af318bbf0e9c4483408485fe0a6c6f3fbe5369ca28b290ee1af990ba0c4828e3c8159ddcc1897496099ce354f7ee9bd42dd33c5e";

252 строка: это наш mainSpork pubKey.

253 срока: аналогично.

checkpointData = (CCheckpointData) {
   boost::assign::map_list_of
      (   0, uint256S("0x000000216344c50e38ed7a0373e0ae279348b91cb96449eb719dd76d4ab0505c")),
          1495022401, // * UNIX timestamp of last checkpoint block
          0,          // * total number of transactions between genesis and last checkpoint
                      //   (the tx=... number in the SetBestChain debug.log lines)
          500        // * estimated number of transactions per day after checkpoint
 };

257 стркоа: наш хеш

258 строка: время

 

Аналогично делаем изменения в TestNet, RegNet

 

Меняем проты: (main, testnet, regnet)

nDefaultPort = 7111;
nDefaultPort = 17111;
nDefaultPort = 17222;

Сообщение отредактировал Dobryj: 20 May 2017 - 11:51

  • 1

Что-то не знаешь, учи ман часть, не понял, спроси.


#4 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 20 May 2017 - 12:11

Провести замену портов можно и через поиск-замена, в Atom можно не беспокоиться что он захватит папку .git.

main:   9999 -> 7111
test:   19999 -> 17111
reg:    19994 -> 17222

RCP
main:   9998 -> 2883
test:   19998 -> 12883
regnet: 18332 -> 13382

Искать в последовательности: 18332 -> 19998 -> 9998 -> 19994 -> 19999 -> 9999

 

В прицепе на этом все, более подробно по настройке и редактированию исходников я расскажу в другом гайде.

 

Не забываем закоммитеть все изменение

git commit -m "my new coin fork"

Компиляция форка

dobryj@win10:/mnt/d/git/& cd dash/depends
# Win64
dobryj@win10:/mnt/d/git/& make HOST=x86_64-w64-mingw32
# Win32
dobryj@win10:/mnt/d/git/& make HOST=i686-w64-mingw32
# MacOSX
dobryj@win10:/mnt/d/git/& make HOST=x86_64-apple-darwin11
# Linux ARM 32 bit
dobryj@win10:/mnt/d/git/& make HOST=arm-linux-gnueabihf
# Linux ARM 64 bit
dobryj@win10:/mnt/d/git/& make HOST=aarch64-linux-gnu
# или сборка всех
dobryj@win10:/mnt/d/git/& make

данной командой мы скачиваем зависимости для компиляции под ту или иную архитектуру.

 

Далее:

dobryj@win10:/mnt/d/git/& cd .. 
dobryj@win10:/mnt/d/git/& ./autogen.sh
# конфигурация
# Win32
dobryj@win10:/mnt/d/git/& ./configure --prefix=`pwd`/depends/i686-w64-mingw32
# Win64
dobryj@win10:/mnt/d/git/& ./configure --prefix=`pwd`/depends/x86_64-w64-mingw32
# MacOSX
dobryj@win10:/mnt/d/git/& ./configure --prefix=`pwd`/depends/x86_64-apple-darwin11
# Linux ARM
dobryj@win10:/mnt/d/git/& ./configure --prefix=`pwd`/depends/arm-linux-gnueabihf
# Или для всех сразу
dobryj@win10:/mnt/d/git/& ./configure

Теперь собираем наш кошелек

dobryj@win10:/mnt/d/git/&make

Ну вот в прицепе и все.

 

Следующие гайды:

1) Конфигурация Bitcoin

2) Конфигурация Dash

3) Конфигурация Litecoin

4) Свой pool

5) Свои dns для монет


Сообщение отредактировал Dobryj: 22 May 2017 - 00:56

  • 2

Что-то не знаешь, учи ман часть, не понял, спроси.


#5 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 20 May 2017 - 14:54

В "depends" могут быть ошибку при 

make

Проблема в том что некоторые ссылки устарели, пишите. Буду в git проекте исправлять скрипт загрузки.


Сообщение отредактировал Dobryj: 22 May 2017 - 00:55

  • 1

Что-то не знаешь, учи ман часть, не понял, спроси.


#6 senator_dmr

senator_dmr

    Новичок

  • Пользователи
  • Pip
  • 16 сообщений

Отправлено 22 May 2017 - 00:41

А кошельки-то синхронизируются после компиляции (версии 0.12.1.x)?


  • 0

#7 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 22 May 2017 - 00:54

А кошельки-то синхронизируются после компиляции (версии 0.12.1.x)?

 

Если успеешь их запустить менее чем за час, после компиляции, то да. Сейчас готовлю подробный гайд по настройки\редактированию своего форка, тут все очень обобщенно. 

 

Ну если что-то не получается, пиши, решить помогу. 


Сообщение отредактировал Dobryj: 22 May 2017 - 00:59

  • 0

Что-то не знаешь, учи ман часть, не понял, спроси.


#8 senator_dmr

senator_dmr

    Новичок

  • Пользователи
  • Pip
  • 16 сообщений

Отправлено 22 May 2017 - 06:49

Установим необходимые программы в ubuntu:

dobryj@win10:/mnt/d/git$sudo apt-get install g++-mingw-w64-i686 mingw-w64-i686-dev g++-mingw-w64-x86-64 mingw-w64-x86-64-dev git curl python-dev python-pip python2.7-dev libssl-dev pip 
#система попросить вести пароль, который вы вели при создании пользователя

E: Не удалось найти пакет pip


Сообщение отредактировал senator_dmr: 22 May 2017 - 06:51

  • 0

#9 senator_dmr

senator_dmr

    Новичок

  • Пользователи
  • Pip
  • 16 сообщений

Отправлено 22 May 2017 - 08:27

Устанавливаем:

dobryj@win10:/mnt/d/git$cd xcoin-hash && sudo python setup.py install && cd ..

Нужно также выполнить

sudo pip install scrypt construct==2.5.2

чтобы работал GenesisH0


  • 0

#10 AsdSanta

AsdSanta

    Captivus ex conscientia

  • Пользователи
  • PipPipPip
  • 4077 сообщений
  • ГородBern

Отправлено 22 May 2017 - 08:36

прошлый раз було интересней - но спасиб за труд............


  • 0

Не бойся,когда ты один. Бойся,когда ты — ноль!

 

#11 senator_dmr

senator_dmr

    Новичок

  • Пользователи
  • Pip
  • 16 сообщений

Отправлено 22 May 2017 - 08:36

genesis = CreateGenesisBlock(1495044000, 4083650, 0x1e0ffff0, 1, 50 * COIN);
consensus.hashGenesisBlock = genesis.GetHash();
assert(consensus.hashGenesisBlock == uint256S("0x0000049e851fd46a989f744a54b2b53fbb2a52d9123da7bcbe62a678ff522126"));
assert(genesis.hashMerkleRoot == uint256S("0x093f2b2c7583aeb09b465a8fd5fc9c238ba9cfb34ef5291a9acc336ce91396ce"));

124 строка: это наши "time", "nonce", "bits" - Main сети из genesis.txt 

126 строка: это наш hash\хеш genesis блока main сети.

127 строка: это merkle хеш main сети.

 

Аналогично сделаем изменение для testnet и regnet из genesis.txt

genesis = CreateGenesisBlock(1495022401, 817368, 0x1e0ffff0, 1, 50 * COIN);
consensus.hashGenesisBlock = genesis.GetHash();
assert(consensus.hashGenesisBlock == uint256S("0x000000216344c50e38ed7a0373e0ae279348b91cb96449eb719dd76d4ab0505c"));
assert(genesis.hashMerkleRoot == uint256S("0xa6e51cb3d1ed62816c57663db61b23dca259072fc89b40f6ae782cff816443d9"));
genesis = CreateGenesisBlock(1495022402, 2, 0x207fffff, 1, 50 * COIN);
consensus.hashGenesisBlock = genesis.GetHash();
assert(consensus.hashGenesisBlock == uint256S("0x5e84e86aeeba22c8ef2a09389518cd7e77fb78ff368db52ea73c36384f5e839e"));
assert(genesis.hashMerkleRoot == uint256S("0xa6e51cb3d1ed62816c57663db61b23dca259072fc89b40f6ae782cff816443d9"));

Разве у testnet и regnet merkle хеш должен отличатся от main?


  • 0

#12 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 22 May 2017 - 09:52

sudo pip install scrypt construct==2.5.2

 

в win10\ubuntu установлен по умолчанию. Так что это не обязательно.

 

Разве у testnet и regnet merkle хеш должен отличатся от main?

Ну я думал понятно, что их нужно заменить на свои... отрывки кода и строчки где искать.

 

Копипаст? Данный код, для примера, и его не нужно использовать. А кто хотел разобраться уже понял что они не должны отличаться.

 

прошлый раз було интересней - но спасиб за труд............

Спасибо.

Это первый из серии гайдов.


  • 0

Что-то не знаешь, учи ман часть, не понял, спроси.


#13 senator_dmr

senator_dmr

    Новичок

  • Пользователи
  • Pip
  • 16 сообщений

Отправлено 22 May 2017 - 09:57

Во время компиляции для x86_64-w64-mingw32 выбрасывает ошибку:

make[2]: Вход в каталог `/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce'
 cd . && /bin/bash /mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/missing automake-1.14 --foreign
/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/missing: строка 81: automake-1.14: команда не найдена
WARNING: 'automake-1.14' is missing on your system.
         You should only need it if you modified 'Makefile.am' or
         'configure.ac' or m4 files included by 'configure.ac'.
         The 'automake' program is part of the GNU Automake package:
         <http://www.gnu.org/software/automake>
         It also requires GNU Autoconf, GNU m4 and Perl in order to run:
         <http://www.gnu.org/software/autoconf>
         <http://www.gnu.org/software/m4/>
         <http://www.perl.org/>
make[2]: *** [Makefile.in] Ошибка 1
make[2]: Выход из каталога `/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce'
make[1]: *** [Makefile.in] Ошибка 1
make[1]: Выход из каталога `/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/src'
make: *** [/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/./.stamp_built] Ошибка 2

в win10\ubuntu установлен по умолчанию. Так что это не обязательно.

Странно, мне пришлось выполнять команду, т.к. генератор генезиса не работал.

У меня Win10 Pro, версия 10.0.14393


Сообщение отредактировал senator_dmr: 22 May 2017 - 10:03

  • 0

#14 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 22 May 2017 - 10:06

senator_dmr, хм.... странно. Спасибо, добавил в гайд. 

У меня работало и без этого.


  • 0

Что-то не знаешь, учи ман часть, не понял, спроси.


#15 senator_dmr

senator_dmr

    Новичок

  • Пользователи
  • Pip
  • 16 сообщений

Отправлено 22 May 2017 - 10:23

Во время компиляции для x86_64-w64-mingw32 выбрасывает ошибку:

make[2]: Вход в каталог `/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce'
 cd . && /bin/bash /mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/missing automake-1.14 --foreign
/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/missing: строка 81: automake-1.14: команда не найдена
WARNING: 'automake-1.14' is missing on your system.
         You should only need it if you modified 'Makefile.am' or
         'configure.ac' or m4 files included by 'configure.ac'.
         The 'automake' program is part of the GNU Automake package:
         <http://www.gnu.org/software/automake>
         It also requires GNU Autoconf, GNU m4 and Perl in order to run:
         <http://www.gnu.org/software/autoconf>
         <http://www.gnu.org/software/m4/>
         <http://www.perl.org/>
make[2]: *** [Makefile.in] Ошибка 1
make[2]: Выход из каталога `/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce'
make[1]: *** [Makefile.in] Ошибка 1
make[1]: Выход из каталога `/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/src'
make: *** [/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/./.stamp_built] Ошибка 2

Решил с помощью sudo apt-get install automake1.4


  • 0

#16 senator_dmr

senator_dmr

    Новичок

  • Пользователи
  • Pip
  • 16 сообщений

Отправлено 22 May 2017 - 10:32

Следующая ошибка (все также время компиляции для x86_64-w64-mingw32):

rm: невозможно удалить «/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/boost/1_59_0-4ae803f80a9/b2»: Ошибка ввода/вывода
make: *** [/mnt/c/git/dash/depends/work/staging/x86_64-w64-mingw32/boost/1_59_0-4ae803f80a9/.stamp_staged] Ошибка 1

  • 0

#17 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 22 May 2017 - 10:47

 

Следующая ошибка (все также время компиляции для x86_64-w64-mingw32):

rm: невозможно удалить «/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/boost/1_59_0-4ae803f80a9/b2»: Ошибка ввода/вывода
make: *** [/mnt/c/git/dash/depends/work/staging/x86_64-w64-mingw32/boost/1_59_0-4ae803f80a9/.stamp_staged] Ошибка 1

 

Данная ошибка говорить о том что целостность файла нарушена или нету доступа к файлу.

 

Очисти эти папки:

\depends\work\*
\depends\x86_64-w64-mingw32\ # удалить вообще

В время скачиваний пакетов ошибок не было? 


Сообщение отредактировал Dobryj: 22 May 2017 - 10:50

  • 0

Что-то не знаешь, учи ман часть, не понял, спроси.


#18 senator_dmr

senator_dmr

    Новичок

  • Пользователи
  • Pip
  • 16 сообщений

Отправлено 22 May 2017 - 11:33

Данная ошибка говорить о том что целостность файла нарушена или нету доступа к файлу.

 

Очисти эти папки:

\depends\work\*
\depends\x86_64-w64-mingw32\ # удалить вообще

В время скачиваний пакетов ошибок не было? 

Очистил. Повторно выполнил make HOST=x86_64-w64-mingw32 , вылезла та же ошибка.

В смысле во время скачивания пакетов? Больше до этого места (ошибка ввода-вывода) не выкидывало (за исключением другой ошибки, о которой писал выше, которая решилась установкой  automake 1.4)


  • 0

#19 Dobryj

Dobryj

    Новичок

  • Пользователи
  • Pip
  • 42 сообщений

Отправлено 22 May 2017 - 11:35

Повторно выполнил make HOST=x86_64-w64-mingw32 , вылезла та же ошибка.

 

Очисти папки и попробуй:

make HOST=x86_64-w64-mingw32 -j4

  • 0

Что-то не знаешь, учи ман часть, не понял, спроси.


#20 senator_dmr

senator_dmr

    Новичок

  • Пользователи
  • Pip
  • 16 сообщений

Отправлено 22 May 2017 - 12:09

 

Очисти папки и попробуй:

make HOST=x86_64-w64-mingw32 -j4
configure: creating ./config.status
make[2]: Выход из каталога `/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce'
make[1]: *** [Makefile.in] Ошибка 1
make[1]: Выход из каталога `/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/src'
make: *** [/mnt/c/git/dash/depends/work/build/x86_64-w64-mingw32/native_protobuf/2.6.1-e08f2c999ce/./.stamp_built] Ошибка 2

  • 0




Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных