Pages:
Author

Topic: Собрал 0.13.0 из исходников - page 7. (Read 36798 times)

full member
Activity: 196
Merit: 100
Интересно, спасибо. Еще хотелось бы знать какого уровня должен быть навык программирования чтобы не просто повторить, но и понять этапы.
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Я тоже поначалу нетбинсом пробовал, но в итоге сейчас QT по исходникам шарюсь. Менее тормознуто получается.
legendary
Activity: 3556
Merit: 1100
Ну я пробовал в 12 убунте собирать - не получалось какие-то библиотеки установить.

Откопал я у себя виртуалку 2013 года, с 12 убунтой, с Qt, с биткоином 0.8.2 версии. Были же времена - нажал на кнопку - всё запустилось и заработало. А сейчас жесть какая то - https://github.com/bitcoin/bitcoin/


Собрал 0.13.0 в 16 убунте на VirtualBox Версии 5.1.22 r115126  (в VB 4.3.6-91406, что у меня стоял раньше, с установкой разрешения экрана убунты, и 14 и 16, какой то гемор вылез)

bench_bitcoin
bitcoind
bitcoin-tx
test_bitcoin-qt
bitcoin-cli
bitcoin-qt
test_bitcoin

 Roll Eyes много файлов собралось. (Для файлов типа «разделяемая библиотека» не установлено каких-либо приложений.)
С непривычки не сразу сообразил как они запускаются - https://www.google.ru/search?q=запустить+бинарный+файл+ubuntu

Установил Qt Creator и добавил qt4-make

В папке bitcoin-0.13.0 выполнил команду:
qmake -project

После чего в папке bitcoin-0.13.0 появился bitcoin-0.13.0.pro файл.
В Qt сейчас очень удобно лазить по всем исходникам этой папки.
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
...
3. Установить убунту на виртуальную машину (!версия убунту должна быть 14 или выше!)
...

Почему должна быть 14 и выше?


ссылка кривая Roll Eyes http://'https://bitcointalksearch.org/topic/m.16455338'
так правильно https://bitcointalksearch.org/topic/m.16455338

Ну я пробовал в 12 убунте собирать - не получалось какие-то библиотеки установить. Сейчас уже не помню какие.
Ссылку поправил.
legendary
Activity: 3556
Merit: 1100
...
3. Установить убунту на виртуальную машину (!версия убунту должна быть 14 или выше!)
...

Почему должна быть 14 и выше?


ссылка кривая Roll Eyes http://'https://bitcointalksearch.org/topic/m.16455338'
так правильно https://bitcointalksearch.org/topic/m.16455338
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Интересно.
В письмах пишут, что первый релиз был как минимум раньше чем 11 января 2009
https://sourceforge.net/p/bitcoin/mailman/message/21312757/
Однако исходники на sourceforge.net появились только в августе.
Значит анонс биткоина был раньше 2009 года и первые исходники нигде не публиковались?

UPDT
Недолгое гугление показало, где и когда был анонс самой первой версии биткоина: 8 января 2009 года
http://www.metzdowd.com/pipermail/cryptography/2009-January/014994.html

Интересно, что предыдущим сообщением было приглашение на конференцию по финансовой криптографии от International Financial Cryptography Association.
legendary
Activity: 1148
Merit: 1051
На sourceforge код появился тоже 30 августа 2009
https://sourceforge.net/p/bitcoin/code/1/tree/trunk/
и залил его туда тоже не Накомото, а чувак с ником  sirius-m https://sourceforge.net/u/sirius-m/profile/

Накомото сделал первый коммит через два месяца https://sourceforge.net/p/bitcoin/code/15/tree/


C sourceforge профиль Накомото, был удалён в 2014 году, после якобы взлома его акка, а акктивность его можно проследить по Mailing Lists начиная с декабря 2008 https://sourceforge.net/p/bitcoin/mailman/bitcoin-list/?viewmonth=200812
а чувак sirius-m это Martti Malmi который один из первых присоединился к биткоин разработке где-то в середине 2009
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
На sourceforge код появился тоже 30 августа 2009
https://sourceforge.net/p/bitcoin/code/1/tree/trunk/
и залил его туда тоже не Накомото, а чувак с ником  sirius-m https://sourceforge.net/u/sirius-m/profile/

Накомото сделал первый коммит через два месяца https://sourceforge.net/p/bitcoin/code/15/tree/
legendary
Activity: 1148
Merit: 1051
По просьбе одного из форумчан, еще немного покопался в истории.
Как возникло ограничение 1000000 байт на размер блока.

30 Aug 2009
на гитхабе опубликована первая версия биткоина. Интересно, что опубликовал ее не Накомото, а вот этот чувак: https://github.com/saracen
Не знаю кто это, но это точно живой человек и сильный программист. Последний его коммит на гитхабе был 16 апреля 2017 года (5 дней назад)

Недавно кстати ставил альфа версию на xp

С этого момента все новые клиенты перестали принимать блоки размером больше 1000000 байт.

Накомото изначально публиковал на sourceforge https://sourceforge.net/p/bitcoin/code/HEAD/tree/, а saracen сделал коммиты оттуда на гитхаб,  "офицально" на гитхаб "переехал" gavin andresen в 2011


Недавно кстати, интереса ради, ставил версию  0.1.1 на xp

kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
По просьбе одного из форумчан, еще немного покопался в истории.
Как возникло ограничение 1000000 байт на размер блока.

30 Aug 2009
на гитхабе опубликована первая версия биткоина. Интересно, что опубликовал ее не Накомото, а вот этот чувак: https://github.com/saracen
Не знаю кто это, но это точно живой человек и сильный программист. Последний его коммит на гитхабе был 16 апреля 2017 года (5 дней назад)

В первой версии клиента константа MAX_SIZE ограничивала размер блока 32 мегабайтами.
https://github.com/bitcoin/bitcoin/blob/e071a3f6c06f41068ad17134189a4ac3073ef76b/main.h#L17

19 Jul 2010
Впервые константа MAX_BLOCK_SIZE = 1000000 появилась в коммите от 19 Июля 2010 года. Запилил ее туда вот этот чел https://github.com/gavinandresen

Однако эта константа фигурировала только внутри кода майнера, таким образом новые версии клиента уже не майнили блоки с большей длинной
https://github.com/bitcoin/bitcoin/blob/9d2174b6f5f3fac2463c7ebc2dbb9004b3740d23/main.cpp#L2614

Функця CheckBlock() в этом коммите еще не поменялась
https://github.com/bitcoin/bitcoin/blob/9d2174b6f5f3fac2463c7ebc2dbb9004b3740d23/main.cpp#L1286
Поэтому старые майнеры могли продолжать майнить 32 М блоки и они всеми клиентами принимались как валидные.

20 Sep 2010
Наконец 20 сентября 2010 года чувак с ником  invalid-email-address (скорее всего опять Андерсен) поменял функцию CheckBlock()
https://github.com/bitcoin/bitcoin/commit/172f006020965ae8763a0610845c051ed1e3b522#diff-118fcbaaba162ba17933c7893247df3a
С этого момента все новые клиенты перестали принимать блоки размером больше 1000000 байт.
legendary
Activity: 1260
Merit: 1019
Возможно, но я сомневаюсь. Думаю, что под винду они компилят в отдельном проекте MinGW, по крайней мере Qt-клиент.
Там же у них отдельно версии и 32 разряда, и 64, и GUI - всё это в бинарниках под линухом может быть проблематично менять.
Зачем? Запустил под тем же линухом скрипт - и получаешь экзешники аккуратно положенные
в отдельную папочку. Для разработки я тоже люблю пользоваться Qt-криэйтером, но когда
дело касается выпуска релизных версий - на кой фиг переключаться в другую операционку
и запускать какие-то визуальные средства, если достаточно это просто запустить скриптом?

Тем более, что зачастую современные средства сборок вообще предполагают автоматическую
сборку и проверку тестов на выделенном для этого сервере при коммите/мёрдже!
full member
Activity: 173
Merit: 100
Спасибо, понятнее теперь. Т.е. проект сборки и QT и bitcoind под винду у них есть и сейчас
Откуда такой вывод? Сидят себе под линухом и компиляют бинарники под винду.
Зачем поддерживать сборку сборку из двух разных систем, если достаточно одной?

Возможно, но я сомневаюсь. Думаю, что под винду они компилят в отдельном проекте MinGW, по крайней мере Qt-клиент. Там же у них отдельно версии и 32 разряда, и 64, и GUI - всё это в бинарниках под линухом может быть проблематично менять.
legendary
Activity: 1260
Merit: 1019
Спасибо, понятнее теперь. Т.е. проект сборки и QT и bitcoind под винду у них есть и сейчас
Откуда такой вывод? Сидят себе под линухом и компиляют бинарники под винду.
Зачем поддерживать сборку сборку из двух разных систем, если достаточно одной?
full member
Activity: 173
Merit: 100
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Самая первая из опубликованных версий биткоина https://github.com/bitcoin/bitcoin/tree/e071a3f6c06f41068ad17134189a4ac3073ef76b
Если почитать ридми то станет ясно, что
1. изначально клиент программировался не на QT а на wxWidgets
2. клиент для винды как и сейчас собирался с помощью MinGW, но мог запускаться и в Visual Studio

Потом новые разработчики отказались сначала от wxWidgets в пользу QT, потом отказались от поддержки Visual Studio тоже в пользу QT
Связано видимо было с желанием единообразия и с тем, что компиляторы у Visual Studio очень отстают по возможностям от gcc.

Потом (не знаю с какого релиза) кроме графического клиента появился демон bitcoind.
После этого, собирать исходники нужно было в два этапа: компилировать демона в консоли и компилировать графический клиент в QT. Это продолжалось довольно долго, последняя версия исходников, у которой проект QT лежит в релизе https://github.com/bitcoin/bitcoin/tree/ef14a26b12ad63cbe109e24043b0b1ce5c07447a
По идее графический клиент этой версии должен компилироваться в винде с помощью QT, если предварительно установить все зависимости как написано тут: https://github.com/bitcoin/bitcoin/blob/ef14a26b12ad63cbe109e24043b0b1ce5c07447a/doc/build-msw.md

В следующих релизах проект QT из исходников убрали по следующим мотивам: https://github.com/bitcoin/bitcoin/blob/92d25e4eebbc20c4b056faeab688b2cef5790bac/doc/release-notes.md

Quote
For 0.9.0 we switched to an autotools-based build system instead of individual (q)makefiles.

Using the standard "./autogen.sh; ./configure; make" to build Bitcoin-Qt and bitcoind makes it easier for experienced open source developers to contribute to the project.

В переводе означает, что новый вариант компиляции, когда все в одной куче и в консоли, разработчикам показался более стандартным и понятным.
full member
Activity: 173
Merit: 100
Вот интересно, они же (группа разработчиков) собирают готовый икзешник в релизах под винду, они его  же не таким способом собирают через прокладки виртуалбокс-линукс, т.е. кто-то владеет проектом для сборки, но всё покрыто мраком. При том декларируется, что весь код открытый, почему бы не выложить виндовский проект для сборки QT под виндовским компилятором? Интересно, кто из разработчиков автор и ответственный за сборку новых релизов под windows?
hero member
Activity: 1232
Merit: 503
Нет, это гайд как собрать именно биткоин из исходников.
Чтобы запустить свою монету, в исходниках сначала надо поменять хотя бы генезис блок. А потом уже собрать свою монету точно так же как в этом гайде.
а зачем тогда собирать биткоин ??

Чтобы научиться это делать.
Когда научитесь собирать биткоин, можете начинать пробовать что-то делать с его исходниками и смотреть - что получилось.
спс вам +1 в карму =)
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Нет, это гайд как собрать именно биткоин из исходников.
Чтобы запустить свою монету, в исходниках сначала надо поменять хотя бы генезис блок. А потом уже собрать свою монету точно так же как в этом гайде.
а зачем тогда собирать биткоин ??

Чтобы научиться это делать.
Когда научитесь собирать биткоин, можете начинать пробовать что-то делать с его исходниками и смотреть - что получилось.
hero member
Activity: 1232
Merit: 503
Нет, это гайд как собрать именно биткоин из исходников.
Чтобы запустить свою монету, в исходниках сначала надо поменять хотя бы генезис блок. А потом уже собрать свою монету точно так же как в этом гайде.
а зачем тогда собирать биткоин ??
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Нет, это гайд как собрать именно биткоин из исходников.
Чтобы запустить свою монету, в исходниках сначала надо поменять хотя бы генезис блок. А потом уже собрать свою монету точно так же как в этом гайде.
Pages:
Jump to: