64bit Windows用のKumacoin-Qt Walletビルド方法

  • 実績のあるビルド環境
    • Windows10 Home 64bit
    • バージョン 1709
    • OSビルド 16299.248

いずれもインストールの際に環境変数PATHへインストールしたプログラムのフォルダを追加するようにしてください。




  • 依存ライブラリのビルド
    • openssl
      • プログラム一覧から「MinGW」→「MinGW Shell」を選択してシェルを起動する
        (もしくはエクスプローラーで「C:\MinGW\msys\1.0」フォルダを開き「msys.bat」を実行)
      • 「deps」フォルダへ移動する
        cd /c/deps
      • ソースコードを展開する
        tar xfz openssl-1.0.1j.tar.gz
      • 「openssl-1.0.1j」フォルダへ移動する
        cd openssl-1.0.1j
      • Configureを実行する
        Configure no-shared no-dso mingw
      • ビルドする
        make
    • libdb
      • プログラム一覧から「MinGW」→「MinGW Shell」を選択してシェルを起動する
        (もしくはエクスプローラーで「C:\MinGW\msys\1.0」フォルダを開き「msys.bat」を実行)
        すでに起動済みの場合は開いているシェルをそのまま使ってOK
      • 「deps」フォルダへ移動する
        cd /c/deps
      • ソースコードを展開する
        tar xfz db-4.8.30.NC.tar.gz
      • 「build_unix」フォルダへ移動する
        cd db-4.8.30.NC/build_unix
      • Configureを実行する
        ../dist/configure --enable-mingw --enable-cxx --disable-replication --with-mutex=x86_64/gcc-assembly
      • エクスプローラーで「C:\deps\db-4.8.30.NC\build_unix」フォルダを開く
      • テキストエディタで「db.h」を開く
      • 113行目にある「pthread_t」を「u_int32_t」へ書き変える
      • ビルドする
        make
    • boost
      • 「deps」フォルダにある「boost_1_55_0.zip」を展開する
        (展開した結果「C:\deps\boost_1_55_0\boost_1_55_0」となってしまった場合は「C:\deps\boost_1_55_0」に修正)
      • プログラム一覧からWindowsの「コマンドプロンプト」を起動する
      • 「boost_1_55_0」フォルダへ移動する
        cd C:\deps\boost_1_55_0\
      • b2.exeを生成する
        .\bootstrap.bat mingw
      • ビルドする
        .\b2.exe --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
    • Miniupnpc
      • プログラム一覧から「MinGW」→「MinGW Shell」を選択してシェルを起動する
        (もしくはエクスプローラーで「C:\MinGW\msys\1.0」フォルダを開き「msys.bat」を実行)
        すでに起動済みの場合は開いているシェルをそのまま使ってOK
      • 「deps」フォルダへ移動する
        cd /c/deps
      • ソースコードを展開する
        tar xfz miniupnpc-1.9.tar.gz
      • 展開された「miniupnpc-1.9」フォルダの名前を「miniupnpc」へ変更する
        mv miniupnpc-1.9 miniupnpc
      • 「miniupnpc」フォルダへ移動する
        cd miniupnpc
      • ビルドする
        ingw32-make -f Makefile.mingw init upnpc-static


  • QTのビルド
    • 「qt」フォルダにある「qt-everywhere-opensource-src-4.8.5.zip」を展開する
      (展開した結果「C:\qt\qt-everywhere-opensource-src-4.8.5\qt-everywhere-opensource-src-4.8.5」となってしまった場合は「C:\qt\qt-everywhere-opensource-src-4.8.5」に修正)
    • 「c:\qt\qt-everywhere-opensource-src-4.8.5」のフォルダ名を「c:\qt\4.8.5」へ変更する
    • プログラム一覧からWindowsの「コマンドプロンプト」を起動する
      すでに起動済みの場合は開いているコマンドプロンプトをそのまま使ってOK
    • 環境変数PATHに「c:\MinGW\bin」と「C:\MinGW\msys\1.0\bin」を追加
      set PATH=%PATH%;c:\MinGW\bin;C:\MinGW\msys\1.0\bin
    • 「4.8.5」フォルダへ移動する
      cd C:\qt\4.8.5
    • Configureを実行する
      .\configure.exe -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 -no-style-plastique -no-style-cleanlooks -no-style-motif -no-style-cde -nomake demos -nomake examples
    • ビルドする
      mingw32-make

  • kumacoin-qtビルドへ向けての下準備
    • 「c:\kumacoin-build」フォルダを作成する

  • kumacoin-qtのビルド
    • プログラム一覧からWindowsの「コマンドプロンプト」を起動する
      すでに起動済みの場合は開いているコマンドプロンプトをそのまま使ってOK
    • 環境変数PATHに「c:\qt\4.8.5\bin」と「c:\MinGW\bin」と「C:\MinGW\msys\1.0\bin」を追加
      set PATH=%PATH%;c:\qt\4.8.5\bin;c:\MinGW\bin;C:\MinGW\msys\1.0\bin
    • 「kumacoin-build」フォルダへ移動する
      cd c:\kumacoin-build
    • Githubからkumacoinのソースを取得する
      git clone https://github.com/kumacoinproject/kumacoin.git
    • テキストエディタで「c:\kumacoin-build\kumacoin\kumacoin-qt.pro」を開いて以下を修正する
      • ファイル先頭の方にある「CONFIG += no_include_pwd」の次の行に「CONFIG += static」を追加する
      • 40行目付近にある「win32:QMAKE_LFLAGS *= -Wl,--dynamicbase -Wl,--nxcompat」を「win32:QMAKE_LFLAGS *= -Wl,--dynamicbase -Wl,--nxcompat -static」へ変更する
      • 10行目付近にある空白行に以下の10行を追記する
        BOOST_LIB_SUFFIX=-mgw46-mt-s-1_55
        BOOST_INCLUDE_PATH=C:/deps/boost_1_55_0
        BOOST_LIB_PATH=C:/deps/boost_1_55_0/stage/lib
        BDB_INCLUDE_PATH=C:/deps/db-4.8.30.NC/build_unix
        BDB_LIB_PATH=C:/deps/db-4.8.30.NC/build_unix
        OPENSSL_INCLUDE_PATH=C:/deps/openssl-1.0.1j/include
        OPENSSL_LIB_PATH=C:/deps/openssl-1.0.1j
        MINIUPNPC_LIB_SUFFIX=-miniupnpc
        MINIUPNPC_INCLUDE_PATH=C:/deps
        MINIUPNPC_LIB_PATH=C:/deps/miniupnpc
      • 変更内容を保存して「c:\kumacoin-build\kumacoin\kumacoin-qt.pro」を閉じる
    • 「kumacoin」フォルダへ移動する
      cd c:\kumacoin-build\kumacoin
    • qmakeを実行する
      qmake "USE_UPNP=1" kumacoin-qt.pro
    • ビルドする
      mingw32-make -f Makefile.Release
    • ビルドに成功していれば「:\kumacoin-build\kumacoin\release」フォルダに「kumacoin-qt.exe」が出来ています。
      お疲れさまでした!