Change the path for macx
[novacoin.git] / doc / building novacoind and novacoinqt under Windows with MSVC.txt
index 5c9a1af..44b9e91 100644 (file)
@@ -1,10 +1,13 @@
 \feff1. Подготовка системы.
+Внимание: данная инструкция (включая сопутствуюшие файлы) расчитана на сборку в среде Windows 64-bit.
 
 1.1 Установка архиватора 7z: http://www.7-zip.org/ 
 (при написании инструкции использовался 7-Zip 9.20 64 bit X64, но скорее всего подойдёт любая версия)
 
 1.2 Установка Visual Studio 2012. (Подойдёт даже бесплатная версия)
 http://www.microsoft.com/ru-ru/download/details.aspx?id=34673
+Установить обновление Visual Studio 2012 Update 4
+http://www.microsoft.com/ru-ru/download/details.aspx?id=39305
 
 1.3 Установка Perl(при написании инструкции использовался ActivePerl-5.16.3.1604-MSWin32-x86-298023.msi)
 http://www.activestate.com/activeperl/downloads
@@ -23,7 +26,7 @@ http://sourceforge.net/projects/nasm/files/latest/download
 Скопируйте папку build-helpers(находится в архиве с исходниками в папке MSVC) и вставьте в папку C:\MyProjects\Deps
 
 2.1 OpenSSL 
--Скачайте http://www.openssl.org/source/openssl-1.0.1j.tar.gz
+-Скачайте http://www.openssl.org/source/openssl-1.0.2.tar.gz
 -Распакуйте архив в папку C:\MyProjects\Deps
 -Откройте командную строку Windows и выполните следующий код:
 
@@ -37,37 +40,29 @@ buildopenssl.bat
 -Запустите Visual Studio 2012
 -Откройте C:\MyProjects\Deps\db-6.0.20\build_windows\Berkeley_DB_vs2010.sln
 -Выберете проект db
--Перейдите в Свойства -> C/C++ -> Создание кода
--Измените в конфигурации Debug "Многопоточная отладка DLL" на "Многопоточную отладка"
--Измените в конфигурации Release "Многопоточный DLL" на "Многопоточный"
--Конфигурации измените и для 32 bit и для 64 bit (если вам нужно 64 bit)
--Нажмите левой кнопкой мыши на  проект db, затем "Только проект" -> "Построить только db"
--Постройте так все конфигурации(Debug 32 bit, Release 32 bit, Debug X64, Release X64)
-
-Проверка если вы всё сделали правильно то у вас будут файлы:
-C:\MyProjects\Deps\db-6.0.20\build_windows\Win32\Release\libdb60.lib
-C:\MyProjects\Deps\db-6.0.20\build_windows\Win32\Debug\libdb60d.lib
-C:\MyProjects\Deps\db-6.0.20\build_windows\x64\Release\libdb60.lib
-C:\MyProjects\Deps\db-6.0.20\build_windows\x64\Debug\libdb60d.lib
+-Измените конфигурацию с Debug на Static Debug
+-Нажмите правой кнопкой мыши на  проект db, затем в "Свойства" -> "Общие" убедитесь, что Набор символов "Использовать многобайтовую кодировку"
+-Перейдите в "C/C++" -> "Препроцессор" -> "Определения препроцессора" и удалите _UNICODE и UNICODE, также убедитесь, что в Унаследованных значениях нет 
+_UNICODE и UNICODE
+-Нажмите правой кнопкой мыши на  проект db, затем "Только проект" -> "Построить только db"
+-Постройте так все Static конфигурации(Static Debug 32 bit, Static Release 32 bit, Static Debug X64, Static Release X64)
+
+Проверка:
+Если вы всё сделали правильно то у вас будут файлы:
+C:\MyProjects\Deps\db-6.0.20\build_windows\Win32\Static Release\libdb60s.lib
+C:\MyProjects\Deps\db-6.0.20\build_windows\Win32\Static Debug\libdb60sd.lib
+C:\MyProjects\Deps\db-6.0.20\build_windows\x64\Static Release\libdb60s.lib
+C:\MyProjects\Deps\db-6.0.20\build_windows\x64\Static Debug\libdb60sd.lib
 
 2.3 Boost
--Скачайте http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.7z/download
--Распакуйте boost_1_55_0.7z в папку C:\MyProjects\Deps
+-Скачайте http://sourceforge.net/projects/boost/files/boost/1.57.0/boost_1_57_0.7z/download
+-Распакуйте boost_1_57_0.7z в папку C:\MyProjects\Deps
 -Откройте командную строку Windows и выполните следующий код:
 
 cd C:\MyProjects\Deps\build-helpers
 buildboost.bat
 
-2.4 Miniupnpc
--Скачайте http://miniupnp.free.fr/files/download.php?file=miniupnpc-1.8.20131209.tar.gz
--Распакуйте miniupnpc-1.8.20131209.tar.gz с помощью 7z. (Распаковать нужно 2 раза, нажмите на файле miniupnpc-1.8.20131209.tar.gz левой кнопкой мыши и выберите 7-Zip, затем Распаковать здесь. Появится файл miniupnpc-1.8.20131209.tar. С ним аналогично, левая кнопка мыши -> 7-Zip -> Распаковать здесь. Появится папка miniupnpc-1.8.20131209. 
--Переименуйте папку в miniupnpc.
--Откройте командную строку Windows и выполните следующий код:
-
-cd C:\MyProjects\Deps\build-helpers
-buildminiupnpc.bat
-
-2.5 qrencode
+2.4 qrencode
 -Скачайте http://qrencode-win32.googlecode.com/archive/681f2ea7a41f919486d9932b3352a2e6920e1cb9.zip
 -Распакуйте
 -Откройте командную строку Windows и выполните следующий код:
@@ -75,7 +70,7 @@ buildminiupnpc.bat
 cd C:\MyProjects\Deps\build-helpers
 buildqrcode.bat
 
-2.6 Qt 5
+2.5 Qt 5
 -Скачайте http://download.qt-project.org/official_releases/qt/5.3/5.3.2/single/qt-everywhere-opensource-src-5.3.2.7z
 -Распакуйте в C:\MyProjects\Deps
 -Если вам нужна поддержка 64 bit, то переименуйте папку qt-everywhere-opensource-src-5.3.2 в qt-everywhere-opensource-src-5.3.2-64
@@ -94,6 +89,11 @@ buildqt64.bat
 3. Компиляция
 Будем хранить исходники в папке C:\MyProjects
 
+3.0 Подготовка Microsoft Visual Studio 2012 к работе
+-Откройте Microsoft Visual Studio 2012
+-Нажмите СЕРВИС -> Параметры.. -> Текстовый редактор -> Все языки -> Табуляция и поставьте флажок "Вставлять пробелы"
+(Если у вас английская версия, то это выглядит так: Tools->Options->Text Editor->All Languages->Tabs и поставьте флажок "Insert Spaces" вместо "Keep Tabs".)
+
 3.1 Скачиваем исходники
 -Зайдите на сайт https://github.com/novacoin-project/novacoin 
 -Нажмите Download ZIP
@@ -113,3 +113,13 @@ txdb-bdb.h
 -Выберете проект NovacoinD, перейдите в свойства -> С\С++ -> Препроцессор, удалите USE_LEVELDB
 -Выберете проект NovacoinQT, перейдите в свойства -> С\С++ -> Препроцессор, удалите USE_LEVELDB
 
+Если вы хотите уменьшить размер бинарных файлов, то
+1) Перейдите на сайт http://upx.sourceforge.net/#downloadupx
+2) Скачайте программу в соответсвии с вашей системой
+3) Распакуйте программу в папку с бинарными Novacoin файлами.
+4) Введите в консоли
+upx -9 NovacoinD.exe
+затем
+upx -9 NovacoinQT.exe
+
+И ваши NovacoinD и NovacoinQT станут меньше ~ в 3 раза.