gui: Enable console line edit on setClientModel
[novacoin.git] / doc / building novacoind and novacoinqt under Windows with MinGW.txt
index be7d753..5ac6ef3 100644 (file)
@@ -1,4 +1,5 @@
-\feff1. Подготовка системы.
+\feff32 bit:
+1. Подготовка системы.
 
 1.1 Установка архиватора 7z: http://www.7-zip.org/ 
 (при написании инструкции использовался 7-Zip 9.20 64 bit X64, но скорее всего подойдёт любая версия)
@@ -20,31 +21,30 @@ msys-libtool-bin
 -нажмите Installation, Apply Changes, Apply. После завершения установки нажмите Close и закройте MinGW Installation Manager.
 
 1.3 Установка MinGW-builds project toolchain:
-Скачайте http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.1/threads-posix/dwarf/i686-4.9.1-release-posix-dwarf-rt_v3-rev1.7z/download
+Скачайте http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.2/threads-posix/dwarf/i686-4.9.2-release-posix-dwarf-rt_v3-rev0.7z/download
 и распакуйте на C:\
 
-1.4 Добавте в переменную PATH путь C:\mingw32\bin;
-Подробное описание как это сделать на Windows 8, Windows 7, Windows XP и Windows Vista
-https://www.java.com/ru/download/help/path.xml
+1.4 Добавьте в переменную PATH путь C:\mingw32\bin;
+Подробное описание как это сделать в Windows: https://www.java.com/ru/download/help/path.xml
 (только не нужно выполнять последний пункт из этой инструкции "Откройте заново окно командной строки и выполните код java." )
 
 Проверка что вы всё сделали правильно:
 1)C:\MinGW\bin должен содержать только файл mingw-get.exe
 2)Откройте Командную строку (Нажмите кнопку Windows + R одновременно. Откроется окно "Выполнить", в поле открыть наберите cmd. Нажмите Ok). Наберите gcc -v. В командной строке выведется текст. В конце текста должно быть написано:
 Thread model: posix
-gcc version 4.9.1 (i686-posix-dwarf-rev1, Built by MinGW-W64 project)
+gcc version 4.9.2 (i686-posix-dwarf-rev0, Built by MinGW-W64 project)
 
 2. Построение зависимостей.
 В инструкции все зависимости сохраняются в папку c:\deps
 
 2.1 OpenSSL 
--Скачайте http://www.openssl.org/source/openssl-1.0.1j.tar.gz
+-Скачайте https://openssl.org/source/openssl-1.0.2.tar.gz
 -Перейдите в папку C:\MinGW\msys\1.0 и запустите msys.bat
 Из MinGw shell выполните следующий код:
 
 cd /c/deps/
-tar xvfz openssl-1.0.1j.tar.gz
-cd openssl-1.0.1j
+tar xvfz openssl-1.0.2.tar.gz
+cd openssl-1.0.2
 Configure no-shared no-dso mingw
 make
 
@@ -59,28 +59,20 @@ cd db-6.0.20/build_unix
 make
 
 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:\deps
+-Скачайте http://sourceforge.net/projects/boost/files/boost/1.57.0/boost_1_57_0.7z/download
+-Распакуйте boost_1_57_0.7z в папку C:\deps
 -Откройте командную строку Windows, и выполните следующий код:
 
-cd C:\deps\boost_1_55_0\
+cd C:\deps\boost_1_57_0\
 bootstrap.bat mingw
 b2 --build-type=complete --with-chrono --with-filesystem --with-program_options --with-system --with-thread toolset=gcc variant=release link=static threading=multi runtime-link=static stage
 
-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:\deps\miniupnpc
-mingw32-make -f Makefile.mingw init upnpc-static
-
-2.5 qrencode
--Скачайте http://prdownloads.sourceforge.net/libpng/libpng-1.6.12.tar.gz?download
+2.4 qrencode
+-Скачайте http://download.sourceforge.net/libpng/libpng-1.6.15.tar.gz?download
 -Распакуйте
 -Откройте MinGw shell (C:\MinGW\msys\1.0\msys.bat) и выполните следующий код:
 
-cd /c/deps/libpng-1.6.12
+cd /c/deps/libpng-1.6.15
 configure --disable-shared
 make
 cp .libs/libpng16.a .libs/libpng.a
@@ -91,47 +83,55 @@ cp .libs/libpng16.a .libs/libpng.a
 
 cd /c/deps/qrencode-3.4.4
 
-LIBS="../libpng-1.6.12/.libs/libpng.a ../../mingw32/i686-w64-mingw32/lib/libz.a" \
-png_CFLAGS="-I../libpng-1.6.12" \
-png_LIBS="-L../libpng-1.6.12/.libs" \
+LIBS="../libpng-1.6.15/.libs/libpng.a ../../mingw32/i686-w64-mingw32/lib/libz.a" \
+png_CFLAGS="-I../libpng-1.6.15" \
+png_LIBS="-L../libpng-1.6.15/.libs" \
 configure --enable-static --disable-shared --without-tools
 
 make
 
-2.6 Qt 5 и Qt 4
+2.5 Qt 5 и Qt 4
 Библиотеки Qt будем хранить в папке C:\Qt
-
+Для ускорения компиляции  вместо 
+mingw32-make 
+используйте
+mingw32-make -j n , где вместо n количество ядер вашего процессора
 Qt 5:
--Скачайте http://download.qt-project.org/official_releases/qt/5.3/5.3.2/submodules/qtbase-opensource-src-5.3.2.7z
-http://download.qt-project.org/official_releases/qt/5.3/5.3.2/submodules/qttools-opensource-src-5.3.2.7z
+-Скачайте http://download.qt-project.org/official_releases/qt/5.4/5.4.0/submodules/qtbase-opensource-src-5.4.0.7z
+http://download.qt-project.org/official_releases/qt/5.4/5.4.0/submodules/qttools-opensource-src-5.4.0.7z
+http://download.qt-project.org/official_releases/qt/5.4/5.4.0/submodules/qttranslations-opensource-src-5.4.0.7z
+
 -Распакуйте в C:\Qt
--Переименуйте папку qtbase-opensource-src-5.3.2 в 5.3.2
+-Переименуйте папку qtbase-opensource-src-5.4.0 в 5.4.0
 -Откройте командную строку Windows и выполните следующий код:
 
-set INCLUDE=C:\deps\libpng-1.6.12;C:\deps\openssl-1.0.1j\include
-set LIB=C:\deps\libpng-1.6.12\.libs;C:\deps\openssl-1.0.1j
+set INCLUDE=C:\deps\libpng-1.6.15;C:\deps\openssl-1.0.2\include
+set LIB=C:\deps\libpng-1.6.15\.libs;C:\deps\openssl-1.0.2
 
-cd C:\Qt\5.3.2
+cd C:\Qt\5.4.0
 
-configure.bat -release -opensource -confirm-license -static -make libs -no-sql-sqlite -no-opengl -system-zlib -qt-pcre -no-icu -no-gif -system-libpng -no-libjpeg -no-freetype -no-angle -no-vcproj -openssl -no-dbus -no-audio-backend -no-wmf-backend -no-qml-debug
+configure.bat -release -opensource -confirm-license -static -make libs -no-sql-sqlite -no-opengl -system-zlib -qt-pcre -no-icu -no-gif -system-libpng -no-libjpeg -no-freetype -no-angle -openssl -no-dbus -no-audio-backend -no-wmf-backend -no-qml-debug
 
 mingw32-make
 
-set PATH=%PATH%;C:\Qt\5.3.2\bin
+set PATH=%PATH%;C:\Qt\5.4.0\bin
 
-cd C:\Qt\qttools-opensource-src-5.3.2
+cd C:\Qt\qttools-opensource-src-5.4.0
 qmake qttools.pro
 mingw32-make
 
+cd C:\Qt\qttranslations-opensource-src-5.4.0
+qmake qttranslations.pro
+mingw32-make
 
 
 Qt4:
--Скачайте http://download.qt-project.org/official_releases/qt/4.8/4.8.6/qt-everywhere-opensource-src-4.8.6.zip
+-Скачайте http://download.qt-project.org/official_releases/qt/4.8/4.8.7/qt-everywhere-opensource-src-4.8.7.zip
 -Распакуйте в C:\Qt
--Переименуйте папку qt-everywhere-opensource-src-4.8.6 в 4.8.6
+-Переименуйте папку qt-everywhere-opensource-src-4.8.7 в 4.8.7
 -Откройте командную строку Windows и выполните следующий код:
 
-cd C:\Qt\4.8.6
+cd C:\Qt\4.8.7
 
 configure -release -opensource -confirm-license -static -no-sql-sqlite -no-qt3support -no-opengl -qt-zlib -no-gif -qt-libpng -qt-libmng -no-libtiff -qt-libjpeg -no-dsp -no-vcproj -no-openssl -no-dbus -no-phonon -no-phonon-backend -no-multimedia -no-audio-backend -no-webkit -no-script -no-scripttools -no-declarative -no-declarative-debug -qt-style-windows -qt-style-windowsxp -qt-style-windowsvista -no-style-plastique -no-style-cleanlooks -no-style-motif -no-style-cde -nomake demos -nomake examples
 
@@ -149,55 +149,12 @@ mingw32-make
 3.2 Собираем novacoind 
 -Перейдите в папку C:\MyProjects\novacoin-master\src
 -Откройте файл makefile.mingw в текстовом редакторе.(При написании инструкции использовался WordPad)
--Поменяйте USE_UPNP:=0 на USE_UPNP:=1
--Поменяйте текущие INCLUDEPATHS, LIBPATHS, LIBS на:
-
-BOOST_SUFFIX?=-mgw49-mt-s-1_55
-
-INCLUDEPATHS= \
- -I"$(CURDIR)" \
- -I"$(CURDIR)/zerocoin" \
- -I"/c/deps/boost_1_55_0" \
- -I"/c/deps" \
- -I"/c/deps/db-6.0.20/build_unix" \
- -I"/c/deps/openssl-1.0.1j/include"
-LIBPATHS= \
- -L"$(CURDIR)/leveldb" \
- -L"/c/deps/boost_1_55_0/stage/lib" \
- -L"/c/deps/miniupnpc" \
- -L"/c/deps/db-6.0.20/build_unix" \
- -L"/c/deps/openssl-1.0.1j"
-
-LIBS= \
-  -l leveldb \
-  -l memenv \
-  -l boost_system$(BOOST_SUFFIX) \
-  -l boost_filesystem$(BOOST_SUFFIX) \
-  -l boost_program_options$(BOOST_SUFFIX) \
-  -l boost_thread$(BOOST_SUFFIX) \
-  -l boost_chrono$(BOOST_SUFFIX) \
-  -l db_cxx \
-  -l ssl \
-  -l crypto
-
--Поменяйте LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat на 
-LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat -Wl,--large-address-aware -static
-
--Если вы хотите использовать LevelDB как базу блоков то добавте в файл MinGW:
-USE_LEVELDB:=1
-(ниже USE_IPV6:=1)
-Так же измените 
-cd leveldb; make; cd ..
-на 
-cd leveldb; TARGET_OS=NATIVE_WINDOWS make libleveldb.a libmemenv.a; cd ..
-
-Ещё измените
-obj/txdb-leveldb.o: leveldb/libleveldb.lib
+-Добавьте  строчку USE_ASM:=1
+-Если вы хотите использовать LevelDB как базу блоков то измените:
+USE_LEVELDB:=0 
 на
-obj/txdb-leveldb.o: leveldb/libleveldb.a
-
-Если вы хотите использовать LevelDB как базу блоков, то просто удалите строчку USE_LEVELDB:=1
+USE_LEVELDB:=1
+(выше USE_IPV6:=1)
 
 -Сохраните измененный файл makefile.mingw
 
@@ -207,10 +164,11 @@ cd /c/MyProjects/novacoin-master/src
 make -f makefile.mingw
 strip novacoind.exe
 
-(Возможная ошибка:
-Fatal error: can't create obj/zerocoin/Accumulator.o: No such file or directory
-make: *** [obj/zerocoin/Accumulator.o] Error 1
-Она происходит если нет папки C:\MyProjects\novacoin-master\src\obj\zerocoin . Так что при удалении obj файлов следите, чтобы папка C:\MyProjects\novacoin-master\src\obj\zerocoin не удалилась вместе с obj файлами.)
+Если у вас возникает ошибка "make: cc: Command not found", то поменяйте в файле makefile.mingw
+
+ $(CC) -c $(xCXXFLAGS) -MMD -o $@ $<
+на
+ gcc -c $(xCXXFLAGS) -MMD -o $@ $<
 
 Если всё сделано правильно, то файл novacoind.exe будет находится в папке C:\MyProjects\novacoin-master\src 
 
@@ -230,15 +188,13 @@ TARGET_OS=NATIVE_WINDOWS make libleveldb.a libmemenv.a
 #    BDB_LIB_PATH, OPENSSL_INCLUDE_PATH and OPENSSL_LIB_PATH respectively
 замените прописанные пути к зависимостям на
 
-BOOST_LIB_SUFFIX=-mgw49-mt-s-1_55
-BOOST_INCLUDE_PATH=C:/deps/boost_1_55_0
-BOOST_LIB_PATH=C:/deps/boost_1_55_0/stage/lib
+BOOST_LIB_SUFFIX=-mgw49-mt-s-1_57
+BOOST_INCLUDE_PATH=C:/deps/boost_1_57_0
+BOOST_LIB_PATH=C:/deps/boost_1_57_0/stage/lib
 BDB_INCLUDE_PATH=C:/deps/db-6.0.20/build_unix
 BDB_LIB_PATH=C:/deps/db-6.0.20/build_unix
-OPENSSL_INCLUDE_PATH=C:/deps/openssl-1.0.1j/include
-OPENSSL_LIB_PATH=C:/deps/openssl-1.0.1j
-MINIUPNPC_INCLUDE_PATH=C:/deps/
-MINIUPNPC_LIB_PATH=C:/deps/miniupnpc
+OPENSSL_INCLUDE_PATH=C:/deps/openssl-1.0.2/include
+OPENSSL_LIB_PATH=C:/deps/openssl-1.0.2
 QRENCODE_INCLUDE_PATH=C:/deps/qrencode-3.4.4
 QRENCODE_LIB_PATH=C:/deps/qrencode-3.4.4/.libs
 
@@ -251,45 +207,254 @@ genleveldb.commands = cd $$PWD/src/leveldb && CC=$$QMAKE_CC CXX=$$QMAKE_CXX TARG
 LIBS += -lshlwapi
 #genleveldb.commands = cd $$PWD/src/leveldb && CC=$$QMAKE_CC CXX=$$QMAKE_CXX TARGET_OS=OS_WINDOWS_CROSSCOMPILE $(MAKE) OPT=\"$$QMAKE_CXXFLAGS $$QMAKE_CXXFLAGS_RELEASE\" libleveldb.a libmemenv.a && $$QMAKE_RANLIB $$PWD/src/leveldb/libleveldb.a && $$QMAKE_RANLIB $$PWD/src/leveldb/libmemenv.a
 
-Если в файле нет такой строчки CONFIG += static , то добавте её.
+Если в файле нет такой строчки CONFIG += static , то добавьте её.
 
 Измените 
 win32:QMAKE_LFLAGS........................
 на 
 win32:QMAKE_LFLAGS *= -Wl,--large-address-aware -static 
 
+Измените 
+windows:LIBS += -lboost_chrono$$BOOST_LIB_SUFFIX -Wl,-Bstatic -lpthread -Wl,-Bdynamic
+на
+windows:LIBS += -lboost_chrono$$BOOST_LIB_SUFFIX
+
 -Сохраните измененный файл novacoin-qt.pro
 -Откройте командную строку Windows и выполните следующий код:
 
-Qt5 + база блоков BDB 
+Qt5 + транзакционный индекс BDB 
+
+set PATH=%PATH%;C:\Qt\5.4.0\bin
+cd C:\MyProjects\novacoin-master
+qmake "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro
+mingw32-make -f Makefile.Release
+
+
+Qt5 + транзакционный индекс LevelDB
+
+set PATH=%PATH%;C:\Qt\5.4.0\bin
+cd C:\MyProjects\novacoin-master
+qmake "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro
+mingw32-make -f Makefile.Release
+
+Qt4 + транзакционный индекс BDB
+
+set PATH=%PATH%;C:\Qt\4.8.7\bin
+cd C:\MyProjects\novacoin-master
+qmake "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro
+mingw32-make -f Makefile.Release
+
+Qt4 + транзакционный индекс LevelDB
+
+set PATH=%PATH%;C:\Qt\4.8.7\bin
+cd C:\MyProjects\novacoin-master
+qmake "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro
+mingw32-make -f Makefile.Release
+
+
+
+Если всё сделано правильно, то файл novacoin-qt.exe будет находится в папке C:\MyProjects\novacoin-master\release
+
+Если вы хотите уменьшить размер бинарных файлов, то
+1) Перейдите на сайт http://upx.sourceforge.net/#downloadupx
+2) Скачайте программу в соответсвии с вашей системой
+3) Распакуйте программу в папку с бинарными Novacoin файлами.
+4) Введите в консоли
+upx -9 novacoind.exe
+затем
+upx -9 novacoin-qt.exe
+
+И ваши novacoind и novacoin-qt станут меньше ~ в 3 раза.
+
+
+
+64 bit:
+1.1 Так же как 32 bit
+
+1.2 Так же как 32 bit
+
+1.3 Установка MinGW-builds project toolchain:
+Скачайте http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.9.2/threads-posix/seh/x86_64-4.9.2-release-posix-seh-rt_v3-rev0.7z/download
+и распакуйте на C:\
+
+1.4 Удалите из переменной PATH путь C:\mingw32\bin; и добавьте в PATH путь C:\mingw64\bin;
+
+Проверка что вы всё сделали правильно:
+1)C:\MinGW\bin должен содержать только файл mingw-get.exe
+2)Откройте Командную строку (Нажмите кнопку Windows + R одновременно. Откроется окно "Выполнить", в поле открыть наберите cmd. Нажмите Ok). Наберите gcc -v. В командной строке выведется текст. В конце текста должно быть написано:
+Thread model: posix
+gcc version 4.9.2 (x86_64-posix-seh-rev0, Built by MinGW-W64 project)
+
+2. Построение зависимостей.
+В инструкции все зависимости сохраняются в папку c:\deps\x64
+
+2.1  OpenSSL: http://www.openssl.org/source/openssl-1.0.2.tar.gz
+-Перейдите в папку C:\MinGW\msys\1.0 и запустите msys.bat
+Из MinGw shell выполните следующий код:
+
+cd /c/deps/x64/
+tar xvfz openssl-1.0.2.tar.gz
+cd openssl-1.0.2
+Configure no-shared no-dso mingw64
+make
+
+2.2 Так же как 32 bit, только cd /c/deps/ меняется на cd /c/deps/x64/
+
+2.3 Так же как 32 bit, только распаковка в C:\deps\x64 и команда cd C:\deps\boost_1_57_0\ меняется на cd C:\deps\x64\boost_1_57_0\ 
+
+2.4 Часть с libpng так же как 32 bit, только распаковка в C:\deps\x64 
+Затем
+-Скачайте http://fukuchi.org/works/qrencode/qrencode-3.4.4.tar.gz
+-Распакуйте в C:\deps\x64
+-Выполните следующий код в MinGW shell:
+
+cd /c/deps/x64/qrencode-3.4.4
+
+LIBS="../libpng-1.6.15/.libs/libpng.a ../../../mingw64/x86_64-w64-mingw32/lib/libz.a" \
+png_CFLAGS="-I../libpng-1.6.15" \
+png_LIBS="-L../libpng-1.6.15/.libs" \
+configure --enable-static --disable-shared --without-tools
+
+make
+
+
+2.5 Qt 5 и Qt 4
+Библиотеки Qt будем хранить в папке C:\Qt
+Для ускорения компиляции  вместо 
+mingw32-make 
+используйте
+mingw32-make -j n , где вместо n количество ядер вашего процессора
+Qt 5:
+-Скачайте http://download.qt-project.org/official_releases/qt/5.4/5.4.0/submodules/qtbase-opensource-src-5.4.0.7z
+http://download.qt-project.org/official_releases/qt/5.4/5.4.0/submodules/qttools-opensource-src-5.4.0.7z
+http://download.qt-project.org/official_releases/qt/5.4/5.4.0/submodules/qttranslations-opensource-src-5.4.0.7z
+-Распакуйте в C:\Qt
+-Переименуйте папку qtbase-opensource-src-5.4.0 в 5.4.0-x64
+-Переименуйте папку qttools-opensource-src-5.4.0 в qttools-opensource-src-5.4.0-x64
+-Переименуйте папку qttranslations-opensource-src-5.4.0 в qttranslations-opensource-src-5.4.0-x64
+-Откройте командную строку Windows и выполните следующий код:
+
+set INCLUDE=C:\deps\x64\libpng-1.6.15;C:\deps\x64\openssl-1.0.2\include
+set LIB=C:\deps\x64\libpng-1.6.15\.libs;C:\deps\x64\openssl-1.0.2
+
+cd C:\Qt\5.4.0-x64
+
+configure.bat -release -opensource -confirm-license -static -make libs -no-sql-sqlite -no-opengl -system-zlib -qt-pcre -no-icu -no-gif -system-libpng -no-libjpeg -no-freetype -no-angle -openssl -no-dbus -no-audio-backend -no-wmf-backend -no-qml-debug
+
+mingw32-make
+
+set PATH=%PATH%;C:\Qt\5.4.0-x64\bin
+
+cd C:\Qt\qttools-opensource-src-5.4.0-x64
+qmake qttools.pro
+mingw32-make
+
+cd C:\Qt\qttranslations-opensource-src-5.4.0-x64
+qmake qttranslations.pro
+mingw32-make
+
+Qt4:
+-Скачайте http://download.qt-project.org/official_releases/qt/4.8/4.8.7/qt-everywhere-opensource-src-4.8.7.zip
+-Распакуйте в C:\Qt
+-Переименуйте папку qt-everywhere-opensource-src-4.8.7 в 4.8.7-x64
+-Откройте командную строку Windows и выполните следующий код:
+
+configure -release -opensource -confirm-license -static -no-sql-sqlite -no-qt3support -no-opengl -qt-zlib -no-gif -qt-libpng -qt-libmng -no-libtiff -qt-libjpeg -no-dsp -no-vcproj -no-openssl -no-dbus -no-phonon -no-phonon-backend -no-multimedia -no-audio-backend -no-webkit -no-script -no-scripttools -no-declarative -no-declarative-debug -qt-style-windows -qt-style-windowsxp -qt-style-windowsvista -no-style-plastique -no-style-cleanlooks -no-style-motif -no-style-cde -nomake demos -nomake examples
+
+mingw32-make
+
+3. Компиляция
+Будем хранить исходники в папке C:\MyProjects
+
+3.1 Так же как 32 bit
+
+3.2 Собираем novacoind 
+-Измените makefile.mingw так же как в 32 bit
+-Откройте файл makefile.mingw в текстовом редакторе и сохраните его как makefile.ming64
+-Измените в INCLUDEPATHS и LIBPATHS /c/deps/ на /c/deps/x64/
+-Измените 
+LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat -Wl,--large-address-aware -static 
+на 
+LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat -Wl,-static, -static-libgcc
+-Удалите (если они есть)obj(.o) файлы из C:\MyProjects\novacoin-master\src\obj , если остались после 32 bit
+-Удалите (если они есть)libleveldb.a и libmemenv.a в папке C:\MyProjects\novacoin-master\src\leveldb
+-Удалите (если они есть)obj(.o) файлы из 
+C:\MyProjects\novacoin-master\src\leveldb\db 
+C:\MyProjects\novacoin-master\src\leveldb\helpers\memenv
+C:\MyProjects\novacoin-master\src\leveldb\port
+C:\MyProjects\novacoin-master\src\leveldb\table
+C:\MyProjects\novacoin-master\src\leveldb\util
+-Откройте MinGW shell (C:\MinGW\msys\1.0\msys.bat) и выполните следующий код:
+
+cd /c/MyProjects/novacoin-master/src
+make -f makefile.mingw64
+strip novacoind.exe
+
+Если всё сделано правильно, то файл novacoind.exe будет находится в папке C:\MyProjects\novacoin-master\src 
+
+
+3.3 Собираем Novacoin QT
+Внимание: Если вы хотите собирать Novacoin Qt с LevelDB, но пропустили шаг со сборкой novacoind.exe, то 
+-Удалите (если они есть)libleveldb.a и libmemenv.a в папке C:\MyProjects\novacoin-master\src\leveldb
+-Удалите (если они есть)obj(.o) файлы из 
+C:\MyProjects\novacoin-master\src\leveldb\db 
+C:\MyProjects\novacoin-master\src\leveldb\helpers\memenv
+C:\MyProjects\novacoin-master\src\leveldb\port
+C:\MyProjects\novacoin-master\src\leveldb\table
+C:\MyProjects\novacoin-master\src\leveldb\util
+-Откройте MinGW shell (C:\MinGW\msys\1.0\msys.bat) и выполните следующий код:
+
+cd /c/myprojects/novacoin-master/src/leveldb
+TARGET_OS=NATIVE_WINDOWS make libleveldb.a libmemenv.a
+
+-Измените файл novacoin-qt.pro так же как в 32 bit
+-Откройте файл novacoin-qt.pro в текстовом редакторе и сохраните его как novacoin-qt64.pro
+-Замените в INCLUDE и LIB путях текст C:/deps на текст C:/deps/x64 (то есть вместо C:/deps/boost_1_57_0 нужно C:/deps/x64/boost_1_57_0 и т.д.)
+-Замените 
+win32:QMAKE_LFLAGS *= -Wl,--large-address-aware -static 
+на
+win32:QMAKE_LFLAGS *= -Wl,-static
+
+-Откройте командную строку Windows и выполните следующий код:
+
+Qt5 + транзакционный индекс BDB 
 
-set PATH=%PATH%;C:\Qt\5.3.2\bin
+set PATH=%PATH%;C:\Qt\5.4.0-x64\bin
 cd C:\MyProjects\novacoin-master
-qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" novacoin-qt.pro
+qmake "USE_IPV6=1" "USE_ASM=1" novacoin-qt64.pro
 mingw32-make -f Makefile.Release
 
 
-Qt5 + база блоков LevelDB
+Qt5 + транзакционный индекс LevelDB
 
-set PATH=%PATH%;C:\Qt\5.3.2\bin
+set PATH=%PATH%;C:\Qt\5.4.0-x64\bin
 cd C:\MyProjects\novacoin-master
-qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" novacoin-qt.pro
+qmake "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro
 mingw32-make -f Makefile.Release
 
-Qt4 + база блоков BDB
+Qt4 + транзакционный индекс BDB
 
-set PATH=%PATH%;C:\Qt\4.8.6\bin
+set PATH=%PATH%;C:\Qt\4.8.7-x64\bin
 cd C:\MyProjects\novacoin-master
-qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" novacoin-qt.pro
+qmake "USE_IPV6=1" "USE_ASM=1" novacoin-qt64.pro
 mingw32-make -f Makefile.Release
 
-Qt4 + база блоков LevelDB
+Qt4 + транзакционный индекс LevelDB
 
-set PATH=%PATH%;C:\Qt\4.8.6\bin
+set PATH=%PATH%;C:\Qt\4.8.7-x64\bin
 cd C:\MyProjects\novacoin-master
-qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" novacoin-qt.pro
+qmake "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro
 mingw32-make -f Makefile.Release
 
+Если всё сделано правильно, то файл novacoin-qt.exe будет находится в папке C:\MyProjects\novacoin-master\release
 
+Если вы хотите уменьшить размер бинарных файлов, то
+1) Перейдите на сайт http://upx.sourceforge.net/#downloadupx
+2) Скачайте программу в соответсвии с вашей системой
+3) Распакуйте программу в папку с бинарными Novacoin файлами.
+4) Введите в консоли
+upx -9 novacoind.exe
+затем
+upx -9 novacoin-qt.exe
 
-Если всё сделано правильно, то файл novacoin-qt.exe будет находится в папке C:\MyProjects\novacoin-master\release
\ No newline at end of file
+И ваши novacoind и novacoin-qt станут меньше ~ в 3 раза.