說明
官方windows版本編譯文檔有點(diǎn)坑爹,依賴庫編譯都編譯不出來木缝,在網(wǎng)上找了好久粟判,終于找到一個編譯比特幣錢包的方法怜奖,我把轉(zhuǎn)載鏈接貼出來:http://8btc.com/article-1996-1.html蜡坊。智能坊錢包是在比特幣基礎(chǔ)上開發(fā)的杠输,所以大多數(shù)依賴庫都是一樣的,只不過智能坊團(tuán)隊(duì)開發(fā)了些功能秕衙,編譯過程有些許不一樣蠢甲。
編譯環(huán)境
- 平臺:windows 10
- mingw32 下載地址【i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z】
- msys(一個在windows平臺模擬shell的程序),下載地址【mingw-get-setup.exe】
編譯環(huán)境安裝
- 安裝完msys之后据忘,會進(jìn)入依賴工具下載界面(也可手動啟動bin/mingw-get.exe)鹦牛,把如下工具打勾,其余默認(rèn)勇吊,注意不要下載msys-gcc和msys-w32api曼追,不需要設(shè)置環(huán)境變量
msys-base-bin
msys-autoconf-bin
msys-automake-bin
msys-libtool-bin
- 安裝mingw32,配置bin目錄環(huán)境變量
PS:最好都安裝在c盤下面萧福,有些坑爹依賴默認(rèn)會去c盤找
下載依賴庫(tar包)
編譯靜態(tài)庫
/c/deps為靜態(tài)庫路徑
- 編譯openssl
不可以多線程編譯拉鹃,會出現(xiàn)引用問題辈赋,有興趣的可以自己去探索
msys shell命令(C:\MinGW\msys\1.0\msys.bat):
tar xvzf openssl-1.0.1g.tar.gz
cd openssl-1.0.1g
Configure no-shared no-dso mingw
make
- 編譯miniupnpc
msys shell命令:
tar -zxvf miniupnpc-1.9.tar.gz
cd miniupnpc-1.9
mingw32-make -f Makefile.mingw init upnpc-static
mkdir miniupnpc
cp *.h miniupnpc/
- 編譯Berkeley DB
編譯時間比較長
msys shell命令:
tar -zxvf db-4.8.30.NC.tar.gz
cd db-4.8.30.NC/build_unix/
../dist/configure --enable-mingw --enable-cxx --disable-shared --disable-replication
make
- 編譯boost
msys shell命令:
tar zxvf boost_1_55_0.tar.gz
cmd命令:
這里可能會出現(xiàn)找不到cl命令和vcvars32.bat文件鲫忍,所以我安裝了vs2010,設(shè)置了兩個環(huán)境變量钥屈,分別是C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE;
cd C:\deps\boost_1_55_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
編譯錢包
- 下載源碼 源碼地址
- 編譯錢包
不可以打亂順序
msys shell命令:
cd dacrs-master/
sh autogen.sh
CPPFLAGS="-I/c/deps/boost_1_55_0 \
-I/c/deps/db-4.8.30.NC/build_unix \
-I/c/deps/openssl-1.0.1g/include \
-I/c/deps \
-std=c++11 \
" \
CXXFLAGS="-Wall" \
LDFLAGS="-L/c/deps/boost_1_55_0/stage/lib \
-L/c/deps/db-4.8.30.NC/build_unix \
-L/c/deps/openssl-1.0.1g \
-L/c/deps/miniupnpc-1.9" \
./configure \
--disable-upnp-default \
--without-gui \
--with-daemon \
--with-boost-libdir=/c/deps/boost_1_55_0/stage/lib \
--with-boost-system=mgw48-mt-s-1_55 \
--with-boost-filesystem=mgw48-mt-s-1_55 \
--with-boost-program-options=mgw48-mt-s-1_55 \
--with-boost-thread=mgw48-mt-s-1_55 \
--with-boost-chrono=mgw48-mt-s-1_55
cmd命令:
windowshell/start.bat
msys shell命令:
make
strip src/dacrs-d.exe