當前位置:首頁 » 比特幣問答 » ubuntu下編譯比特幣

ubuntu下編譯比特幣

發布時間: 2021-07-08 18:10:04

1. 請問哪裡有windows平台C++的bitcoin源代碼下載,我想用VC來編譯。

很多朋友都知道如何在linux平台如何編譯比特幣程序,但是,到了windows平台,
就會感覺到無從下手. 其實, 比特幣程序是跨平台的.
你要編譯windows版的比特幣程序,基本上有兩種方法,一種是在linux平台
(推薦ubuntu 13.10)通過交叉編譯的方法來編譯.另外一種,就是直接在windows平台編譯.
我想,你既然要在windows平台使用,我就詳細介紹一下如何在windwows平台編譯比特幣程序.
我的平台:windows7

第一步:安裝變編譯環境QT和MINGW,msys
1、msys是一個在windows平台模擬shell的程序。
下載安裝程序之後,通過安裝管理程序,按安裝以下內容:
From MinGW installation manager -> All packages -> MSYS
選中以下安裝包
msys-base-bin
msys-autoconf-bin
msys-automake-bin
msys-libtool-bin
點 apply changes開始安裝。他會自動下載安裝好。
需要注意的是,確保不要安裝msys-gcc和msys-w32api ,因為這兩個包和我們的編譯系統發生沖突。
很多人出現一些莫名其妙的問題,就是因為這兩個包。
2、安裝 MinGW-builds
下載並解壓縮 i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z 到C盤根目錄 C:\
注意我的目錄結構。你盡量和我一樣。
3、設置PATH環境變數,將C:\mingw32\bin;添加到第一個。
4、在命令行模式下輸入 gc -v 會得到以下內容
c:\gcc -v
Using built-in specs.
COLLECT_GCC=c:\mingw32\bin\gcc.exe
COLLECT_LTO_WRAPPER=c:/mingw32/bin/../libexec/gcc/i686-w64-mingw32/4.8.2/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: ../../../src/gcc-4.8.2/configure --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 --prefix=/mingw32 --with-sysroot=/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32 --with-gxx-include-dir=/mingw32/i686-w64-mingw32/include/c++ --enable-shared --enable-static --disable-multilib --enable-languages=ada,c,c++,fortran,objc,obj-c++,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --disable-sjlj-exceptions --with-dwarf2 --disable-isl-version-check --disable-cloog-version-check --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=i686 --with-tune=generic --with-libiconv --with-system-zlib --with-gmp=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpfr=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpc=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-isl=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-cloog=/c/mingw482/prerequisites/i686-w64-mingw32-static --enable-cloog-backend=isl --with-pkgversion='i686-posix-dwarf-rev3, Built by MinGW-W64 project' --with-bugurl=http://sourceforge.net/projects/mingw-w64 CFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CPPFLAGS= LDFLAGS='-pipe -L/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/lib -L/c/mingw482/prerequisites/i686-zlib-static/lib -L/c/mingw482/prerequisites/i686-w64-mingw32-static/lib -Wl,--large-address-aware'
Thread model: posix
gcc version 4.8.2 (i686-posix-dwarf-rev3, Built by MinGW-W64 project)
至此,你的開發環境已經搭建好了,很簡單吧

第二部分:下載bitcoin引用的外部庫
我們把它們全部放在 C:\deps目錄下

2.1 安裝OpenSSL
進入啟動 MinGw shell 比如目錄:(C:\MinGW\msys\1.0\msys.bat)運行這個msys.bat,就會啟動一個shell環境,提示符是$
輸入命令
cd /c/deps/
tar xvfz openssl-1.0.1g.tar.gz
cd openssl-1.0.1g
Configure no-shared no-dso mingw
make
等待幾分鍾後,就把openssl編譯好了。

2.2 下載Berkeley DB
我們推薦使用 4.8版本
同樣在msys shell環境下輸入以下命令
cd /c/deps/
tar xvfz 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
等待編譯

2.3 安裝Boost
msys命令:
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

2.4 安裝Miniupnpc
cd C:\deps\miniupnpc
mingw32-make -f Makefile.mingw init upnpc-static
msys shell命令
cd /c/deps/protobuf-2.5.0
configure --disable-shared
make

2.6 qrencode:
命令
cd /c/deps/libpng-1.6.10
configure --disable-shared
make
LIBS="../libpng-1.6.10/.libs/libpng16.a ../../mingw32/i686-w64-mingw32/lib/libz.a" \
png_CFLAGS="-I../libpng-1.6.10" \
png_LIBS="-L../libpng-1.6.10/.libs" \
configure --enable-static --disable-shared --without-tools
make

2.7 安裝 Qt 5 庫
下載和解壓縮
在 windows命令行輸入:
set INCLUDE=C:\deps\libpng-1.6.10;C:\deps\openssl-1.0.1g\include
set LIB=C:\deps\libpng-1.6.10\.libs;C:\deps\openssl-1.0.1g
cd C:\Qt\5.2.1
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-linked -no-dbus -no-audio-backend -no-wmf-backend -no-qml-debug
mingw32-make
set PATH=%PATH%;C:\Qt\5.2.1\bin
cd C:\Qt\qttools-opensource-src-5.2.1
qmake qttools.pro
mingw32-make

3. 下載Bitcoin 0.9.1
在msys shell下輸入以下命令行:
cp /c/deps/libpng-1.6.10/.libs/libpng16.a /c/deps/libpng-1.6.10/.libs/libpng.a
cd /c/bitcoin-0.9.1
./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 \
-I/c/deps/protobuf-2.5.0/src \
-I/c/deps/libpng-1.6.10 \
-I/c/deps/qrencode-3.4.3" \
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 \
-L/c/deps/protobuf-2.5.0/src/.libs \
-L/c/deps/libpng-1.6.10/.libs \
-L/c/deps/qrencode-3.4.3/.libs" \
./configure \
--disable-upnp-default \
--disable-tests \
--with-qt-incdir=/c/Qt/5.2.1/include \
--with-qt-libdir=/c/Qt/5.2.1/lib \
--with-qt-bindir=/c/Qt/5.2.1/bin \
--with-qt-plugindir=/c/Qt/5.2.1/plugins \
--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 \
--with-protoc-bindir=/c/deps/protobuf-2.5.0/src
make
strip src/bitcoin-cli.exe
strip src/bitcoind.exe
strip src/qt/bitcoin-qt.exe

這樣,你就得到了變異好的 bitcoin-cli.exe和bitcoind.exe ,bitcoin-qt.exe(windows QT圖形界面的錢包軟體)

2. Electrum比特幣錢包在ubuntu下怎麼安裝

第一步, 找一台新電腦或硬碟低級格式化後的舊電腦,在斷網的狀態下安裝Linux操作系統Ubuntu(下圖是使用U盤安裝ubuntu的示例):
第二步, 安裝Electrum 比特幣錢包。

裝完Ubuntu Linux操作系統後, 離線安裝Electrum比特幣錢包(筆者個人比較喜歡Electrum,
各位也可以使用Multibit等其他輕錢包)
第三步,生成新的冷錢包地址

裝完以後, 打開Electrum, 並創建新的錢包, 按照圖四到圖八的步驟生成新的冷錢包地址, Electrum預設情況下是一次創建5個新地址,

3. 誰能成功編譯比特幣源碼

友情提醒一下:現在的比特幣基本上被開採到末段了。比特幣的程序原理決定了它越到後期生成間隔越長,所以現在生成一個比特幣的時間可能已經超過比特幣的價值了。畢竟還要考慮到挖礦電腦的功耗和時間等。雖然現在比特幣還是很火,但是現在才開始入手的話就有點遲了,不太可能賺到錢了。

4. electrum比特幣錢包在ubuntu下怎麼安裝

第一步, 找一台新電腦或硬碟低級格式化後的舊電腦,在斷網的狀態下安裝Linux操作系統Ubuntu(下圖是使用U盤安裝ubuntu的示例):
第二步, 安裝Electrum 比特幣錢包。

裝完Ubuntu Linux操作系統後, 離線安裝Electrum比特幣錢包(筆者個人比較喜歡Electrum,
各位也可以使用Multibit等其他輕錢包)
第三步,生成新的冷錢包地址

裝完以後, 打開Electrum, 並創建新的錢包, 按照圖四到圖八的步驟生成新的冷錢包地址, Electrum預設情況下是一次創建5個新地址,
注意圖八, 在命令行鍵入 「listaddressese()"的命令,
系統會列出新創建的5個比特幣地址,再用getpubkeys命令,或者從菜單 master public
key拿到公鑰(公鑰和地址不是同一個概念哦), 請把這個公鑰拷貝下來, 另存到一個文本文件里。圖九是顯示這5個新地址的私鑰,
放著這里只是給大家說明一下,用來和圖十二對比, 5個私鑰是在這個永不觸網的linux操作系統里的錢包里,
大家實際操作中不要做圖九這個步驟。也不要把自己的私鑰告訴其他任何人。

5. 如何在Ubuntu上安裝最新的bitcoin-qt軟體

說說版本問題
1.Ubuntu 8.10 (Intrepid Ibex) Alternate i386 (ISO)
代表文本方式安裝,適合intel平台
2.Ubuntu 8.10 (Intrepid Ibex) Desktop i386 (ISO)
代表圖形安裝和使用版,也是intel平台
3.Ubuntu 8.10 Server amd64 (ISO)
這個是給amd的CPU用的伺服器版本
4.Ubuntu 8.10 (Intrepid Ibex) Server i386 (ISO)Ubuntu 8.10
intelCPU使用的伺服器版本
5.Ubuntu 8.10 (Intrepid Ibex) Alternate amd64 (ISO)
AMD的CPU使用的文本方式安裝版本
Ubuntu軟體源中的軟體非常豐富,不必像Windows軟體那樣四處搜尋;Ubuntu上的軟體安裝工具眾多,使用也很簡單.Ubuntu系統提供的命令行安裝工具有apt-get、dpkg等,圖形化的安裝工具有更新管理器、添加刪除程序、新立得軟體包管理器等.掌握好這些工具的使用方法,我們就可以輕松地完成軟體的安裝和升級工作了.
安裝自己從網上下載的軟體
自己從網上下載的軟體安裝包,常見格式有.deb和tar.gz.通常,我們只能用命令行方式來安裝.
以.deb結尾的文件,如xx..deb,它就相當於Windows系統中的可執行文件,如在GNOME集成桌面環境下,可以直接雙擊該軟體包,這時會 自動啟動GDebi圖形化安裝工具來安裝.如在終端環境下,則可以輸入命令「dpkg–i xx.deb」來進行安裝,如要刪除xx軟體包,則輸入命令「dpkg –r xx」.
以.tar.gz結尾的文件是指用tar命令打 包並壓縮成gzip格式的文件,這樣的文件通常包含軟體的源代碼.對於源代碼的編譯,要求系統中安裝有軟體包build-essential(它包括常用 的編程工具及函數庫等).使用命令「sudo apt-get install build-essential」來安裝該軟體包.
下 面,我們以安裝xx.tar.gz文件為例來介紹.我們通常用「sudo tar zxvf xx.tar.gz」命令來解壓該文件,文件解壓後將在當前目錄下生成xx目錄.然後進入該目錄,輸入命令「sudo ./configure」來檢查系統環境,如檢測通過則生成編譯腳本.接著輸入命令「sudomake」進行編譯,如編譯成功則在當前目錄生成二進制可執行文件,即在終端窗口中以綠色顯示的文件.此後再輸入命令「sudo make install」將二進制可執行文件復制到系統全局路徑或指定目錄下.
小知識:Ubuntu上自帶的命令行安裝工具
1.apt-get命令
apt-get命令是Ubuntu系統中最為常用的命令行安裝工具,使用apt-get命令從軟體源中安裝軟體非常方便、快捷.apt-get命令常用
的參數有「install」和「update」.命令「sudo apt-get
update」用來從軟體源伺服器獲取最新的可用軟體包的列表,在/etc/apt/sources.list文件中添加了某個軟體源伺服器的地址後,需
要執行上面的命令來更新信息.命令「sudoapt-get install
soft」可以讓我們從軟體源中在線下載並安裝軟體,其中「soft」為任何應用軟體或程序的名稱.如要安裝網路掃描工具nmap,則在終端窗口輸入命令
「sudo
apt-get
installnmap」,apt-get命令會自動在軟體源中找到nmap的最新版本,並計算下載的數據量以及安裝所需的空間,用戶確認後就可以在線下載並安裝
nmap軟體了.如要刪除軟體包,則使用命令「sudo apt-get remove nmap」.
2.dpkg命令

Ubuntu是在Debian發行版的基礎上發展起來的,它也支持Debian使用的較為嚴謹的Deb包(即以.deb結尾的文件),因而Ubuntu
上大量軟體安裝包是以Deb包的形式出現的.dpkg(Package manager for
debian,Debian包管理器)是一個用於安裝、創建和刪除Debian軟體包的命令行工具.
三、給Ubuntu新手的建議
當不了解應用軟體的具體名稱時,多使用安裝工具提供的搜索功能或上網搜索;勤於記錄,對於安裝成功的軟體,記下它的軟體包名稱,便於以後安裝時查閱.當熟練掌握了Ubuntu系統提供的安裝工具和軟體安裝方法後,你會發現在Ubuntu中安裝軟體也是一種樂趣!

6. 如何在Ubuntu系統上安裝最新的bitcoin-qt軟體

說說版本問題
1.Ubuntu 8.10 (Intrepid Ibex) Alternate i386 (ISO)
代表文本方式安裝,適合intel平台
2.Ubuntu 8.10 (Intrepid Ibex) Desktop i386 (ISO)
代表圖形安裝和使用版,也是intel平台
3.Ubuntu 8.10 Server amd64 (ISO)
這個是給amd的CPU用的伺服器版本
4.Ubuntu 8.10 (Intrepid Ibex) Server i386 (ISO)Ubuntu 8.10
intelCPU使用的伺服器版本
5.Ubuntu 8.10 (Intrepid Ibex) Alternate amd64 (ISO)
AMD的CPU使用的文本方式安裝版本
Ubuntu軟體源中的軟體非常豐富,不必像Windows軟體那樣四處搜尋;Ubuntu上的軟體安裝工具眾多,使用也很簡單.Ubuntu系統提供的命令行安裝工具有apt-get、dpkg等,圖形化的安裝工具有更新管理器、添加刪除程序、新立得軟體包管理器等.掌握好這些工具的使用方法,我們就可以輕松地完成軟體的安裝和升級工作了.
安裝自己從網上下載的軟體
自己從網上下載的軟體安裝包,常見格式有.deb和tar.gz.通常,我們只能用命令行方式來安裝.
以.deb結尾的文件,如xx..deb,它就相當於Windows系統中的可執行文件,如在GNOME集成桌面環境下,可以直接雙擊該軟體包,這時會 自動啟動GDebi圖形化安裝工具來安裝.如在終端環境下,則可以輸入命令逗dpkg–i xx.deb地來進行安裝,如要刪除xx軟體包,則輸入命令逗dpkg –r xx地.
以.tar.gz結尾的文件是指用tar命令打 包並壓縮成gzip格式的文件,這樣的文件通常包含軟體的源代碼.對於源代碼的編譯,要求系統中安裝有軟體包build-essential(它包括常用 的編程工具及函數庫等).使用命令逗sudo apt-get install build-essential地來安裝該軟體包.
下 面,我們以安裝xx.tar.gz文件為例來介紹.我們通常用逗sudo tar zxvf xx.tar.gz地命令來解壓該文件,文件解壓後將在當前目錄下生成xx目錄.然後進入該目錄,輸入命令逗sudo ./configure地來檢查系統環境,如檢測通過則生成編譯腳本.接著輸入命令逗sudomake地進行編譯,如編譯成功則在當前目錄生成二進制可執行文件,即在終端窗口中以綠色顯示的文件.此後再輸入命令逗sudo make install地將二進制可執行文件復制到系統全局路徑或指定目錄下.
小知識:Ubuntu上自帶的命令行安裝工具
1.apt-get命令
apt-get命令是Ubuntu系統中最為常用的命令行安裝工具,使用apt-get命令從軟體源中非常方便、快捷.apt-get命令常用
的參數有逗install地和逗update地.命令逗sudo apt-get
update地用來從軟體源伺服器獲取最新的可用軟體包的列表,在/etc/apt/sources.list文件中添加了某個軟體源伺服器的地址後,需
要執行上面的命令來更新信息.命令逗sudoapt-get install
soft地可以讓我們從軟體源中在線下載並,其中逗soft地為任何應用軟體或程序的名稱.如要安裝網路掃描工具nmap,則在終端窗口輸入命令
逗sudo
apt-get
installnmap地,apt-get命令會自動在軟體源中找到nmap的最新版本,並計算下載的數據量以及安裝所需的空間,用戶確認後就可以在線下載並安裝
nmap軟體了.如要刪除軟體包,則使用命令逗sudo apt-get remove nmap地.
2.dpkg命令

Ubuntu是在Debian發行版的基礎上發展起來的,它也支持Debian使用的較為嚴謹的Deb包(即以.deb結尾的文件),因而Ubuntu
上大量軟體安裝包是以Deb包的形式出現的.dpkg(Package manager for
debian,Debian包管理器)是一個用於安裝、創建和刪除Debian軟體包的命令行工具.
三、給Ubuntu新手的建議
當不了解應用軟體的具體名稱時,多使用安裝工具提供的搜索功能或上網搜索;勤於記錄,對於安裝成功的軟體,記下它的軟體包名稱,便於以後安裝時查閱.當熟練掌握了Ubuntu系統提供的安裝工具和軟體安裝方法後,你會發現在Ubuntu中也是一種樂趣!

7. 如何在windows平台下編譯比特幣bi

  1. 比特幣(BitCoin)的概念最初由中本聰在2009年提出,根據中本聰的思路設計發布的開源軟體以及建構其上的P2P網路。比特幣是一種P2P形式的數字貨幣。點對點的傳輸意味著一個去中心化的支付系統。

  2. 與大多數貨幣不同,比特幣不依靠特定貨幣機構發行,它依據特定演算法,通過大量的計算產生,比特幣經濟使用整個P2P網路中眾多節點構成的分布式資料庫來確認並記錄所有的交易行為,並使用密碼學的設計來確保貨幣流通各個環節安全性。P2P的去中心化特性與演算法本身可以確保無法通過大量製造比特幣來人為操控幣值。基於密碼學的設計可以使比特幣只能被真實的擁有者轉移或支付。這同樣確保了貨幣所有權與流通交易的匿名性。比特幣與其他虛擬貨幣最大的不同,是其總數量非常有限,具有極強的稀缺性。

8. 如何在windows平台下編譯比特幣bitcoin客戶端

很多朋友都知道如何在linux平台如何編譯比特幣程序,但是,到了windows平台,
就會感覺到無從下手. 其實, 比特幣程序是跨平台的.
你要編譯windows版的比特幣程序,基本上有兩種方法,一種是在linux平台
(推薦ubuntu 13.10)通過交叉編譯的方法來編譯.另外一種,就是直接在windows平台編譯.
我想,你既然要在windows平台使用,我就詳細介紹一下如何在windwows平台編譯比特幣程序.
我的平台:windows7
第一步:安裝變編譯環境QT和MINGW,msys
1、msys是一個在windows平台模擬shell的程序。
下載安裝程序之後,通過安裝管理程序,按安裝以下內容:
From MinGW installation manager -> All packages -> MSYS
選中以下安裝包
msys-base-bin
msys-autoconf-bin
msys-automake-bin
msys-libtool-bin
點 apply changes開始安裝。他會自動下載安裝好。
需要注意的是,確保不要安裝msys-gcc和msys-w32api ,因為這兩個包和我們的編譯系統發生沖突。
很多人出現一些莫名其妙的問題,就是因為這兩個包。

2、安裝 MinGW-builds
下載並解壓縮 i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z 到C盤根目錄 C:\
注意我的目錄結構。你盡量和我一樣。

3、設置PATH環境變數,將C:\mingw32\bin;添加到第一個。

4、在命令行模式下輸入 gc -v 會得到以下內容
c:\gcc -v
Using built-in specs.
COLLECT_GCC=c:\mingw32\bin\gcc.exe
COLLECT_LTO_WRAPPER=c:/mingw32/bin/../libexec/gcc/i686-w64-mingw32/4.8.2/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: ../../../src/gcc-4.8.2/configure --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 --prefix=/mingw32 --with-sysroot=/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32 --with-gxx-include-dir=/mingw32/i686-w64-mingw32/include/c++ --enable-shared --enable-static --disable-multilib --enable-languages=ada,c,c++,fortran,objc,obj-c++,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --disable-sjlj-exceptions --with-dwarf2 --disable-isl-version-check --disable-cloog-version-check --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=i686 --with-tune=generic --with-libiconv --with-system-zlib --with-gmp=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpfr=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpc=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-isl=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-cloog=/c/mingw482/prerequisites/i686-w64-mingw32-static --enable-cloog-backend=isl --with-pkgversion='i686-posix-dwarf-rev3, Built by MinGW-W64 project' --with-bugurl=http://sourceforge.net/projects/mingw-w64 CFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CPPFLAGS= LDFLAGS='-pipe -L/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/lib -L/c/mingw482/prerequisites/i686-zlib-static/lib -L/c/mingw482/prerequisites/i686-w64-mingw32-static/lib -Wl,--large-address-aware'
Thread model: posix
gcc version 4.8.2 (i686-posix-dwarf-rev3, Built by MinGW-W64 project)
至此,你的開發環境已經搭建好了,很簡單吧

第二部分:下載bitcoin引用的外部庫
我們把它們全部放在 C:\deps目錄下

2.1 安裝OpenSSL下載:
進入啟動 MinGw shell 比如目錄:(C:\MinGW\msys\1.0\msys.bat)運行這個msys.bat,就會啟動一個shell環境,提示符是$
輸入命令
cd /c/deps/
tar xvfz openssl-1.0.1g.tar.gz
cd openssl-1.0.1g
Configure no-shared no-dso mingw
make
等待幾分鍾後,就把openssl編譯好了。

2.2 下載Berkeley DB
我們推薦使用 4.8版本
同樣在msys shell環境下輸入以下命令
cd /c/deps/
tar xvfz 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
等待編譯

2.3 安裝Boost

msys命令:
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

2.4 安裝Miniupnpc
cd C:\deps\miniupnpc
mingw32-make -f Makefile.mingw init upnpc-static

2.5下載 protoc 和 libprotobuf:
msys shell命令
cd /c/deps/protobuf-2.5.0
configure --disable-shared
make
2.6 qrencode:
命令
cd /c/deps/libpng-1.6.10
configure --disable-shared
make
ode:
cd /c/deps/qrencode-3.4.3
LIBS="../libpng-1.6.10/.libs/libpng16.a ../../mingw32/i686-w64-mingw32/lib/libz.a" \
png_CFLAGS="-I../libpng-1.6.10" \
png_LIBS="-L../libpng-1.6.10/.libs" \
configure --enable-static --disable-shared --without-tools
make

2.7 安裝 Qt 5 庫
在 windows命令行輸入:
set INCLUDE=C:\deps\libpng-1.6.10;C:\deps\openssl-1.0.1g\include
set LIB=C:\deps\libpng-1.6.10\.libs;C:\deps\openssl-1.0.1g
cd C:\Qt\5.2.1
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-linked -no-dbus -no-audio-backend -no-wmf-backend -no-qml-debug
mingw32-make
set PATH=%PATH%;C:\Qt\5.2.1\bin
cd C:\Qt\qttools-opensource-src-5.2.1
qmake qttools.pro
mingw32-make

3. 下載Bitcoin 0.9.1
在msys shell下輸入以下命令行:
cp /c/deps/libpng-1.6.10/.libs/libpng16.a /c/deps/libpng-1.6.10/.libs/libpng.a
cd /c/bitcoin-0.9.1
./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 \
-I/c/deps/protobuf-2.5.0/src \
-I/c/deps/libpng-1.6.10 \
-I/c/deps/qrencode-3.4.3" \
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 \
-L/c/deps/protobuf-2.5.0/src/.libs \
-L/c/deps/libpng-1.6.10/.libs \
-L/c/deps/qrencode-3.4.3/.libs" \
./configure \
--disable-upnp-default \
--disable-tests \
--with-qt-incdir=/c/Qt/5.2.1/include \
--with-qt-libdir=/c/Qt/5.2.1/lib \
--with-qt-bindir=/c/Qt/5.2.1/bin \
--with-qt-plugindir=/c/Qt/5.2.1/plugins \
--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 \
--with-protoc-bindir=/c/deps/protobuf-2.5.0/src
make
strip src/bitcoin-cli.exe
strip src/bitcoind.exe
strip src/qt/bitcoin-qt.exe

這樣,你就得到了變異好的 bitcoin-cli.exe和bitcoind.exe ,bitcoin-qt.exe(windows QT圖形界面的錢包軟體)

9. 如何在Ubuntu平台下編譯比特幣bitcoin客戶端

很多朋友都知道如何在linux平台如何編譯比特幣程序,但是,到了windows平台,
就會感覺到無從下手. 其實, 比特幣程序是跨平台的.
你要編譯windows版的比特幣程序,基本上有兩種方法,一種是在linux平台
(推薦ubuntu 13.10)通過交叉編譯的方法來編譯.另外一種,就是直接在windows平台編譯.
我想,你既然要在windows平台使用,我就詳細介紹一下如何在windwows平台編譯比特幣程序.
我的平台:windows7

第一步:安裝變編譯環境QT和MINGW,msys
1、msys是一個在windows平台模擬shell的程序。
下載安裝程序之後,通過安裝管理程序,按安裝以下內容:
From MinGW installation manager -> All packages -> MSYS
選中以下安裝包
msys-base-bin
msys-autoconf-bin
msys-automake-bin
msys-libtool-bin
點 apply changes開始安裝。他會自動下載安裝好。
需要注意的是,確保不要安裝msys-gcc和msys-w32api ,因為這兩個包和我們的編譯系統發生沖突。
很多人出現一些莫名其妙的問題,就是因為這兩個包。
2、安裝 MinGW-builds
下載並解壓縮 i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z 到C盤根目錄 C:\
注意我的目錄結構。你盡量和我一樣。
3、設置PATH環境變數,將C:\mingw32\bin;添加到第一個。
4、在命令行模式下輸入 gc -v 會得到以下內容
c:\gcc -v
Using built-in specs.
COLLECT_GCC=c:\mingw32\bin\gcc.exe
COLLECT_LTO_WRAPPER=c:/mingw32/bin/../libexec/gcc/i686-w64-mingw32/4.8.2/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: ../../../src/gcc-4.8.2/configure --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 --prefix=/mingw32 --with-sysroot=/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32 --with-gxx-include-dir=/mingw32/i686-w64-mingw32/include/c++ --enable-shared --enable-static --disable-multilib --enable-languages=ada,c,c++,fortran,objc,obj-c++,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --disable-sjlj-exceptions --with-dwarf2 --disable-isl-version-check --disable-cloog-version-check --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=i686 --with-tune=generic --with-libiconv --with-system-zlib --with-gmp=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpfr=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpc=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-isl=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-cloog=/c/mingw482/prerequisites/i686-w64-mingw32-static --enable-cloog-backend=isl --with-pkgversion='i686-posix-dwarf-rev3, Built by MinGW-W64 project' --with-bugurl= CFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CPPFLAGS= LDFLAGS='-pipe -L/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/lib -L/c/mingw482/prerequisites/i686-zlib-static/lib -L/c/mingw482/prerequisites/i686-w64-mingw32-static/lib -Wl,--large-address-aware'
Thread model: posix
gcc version 4.8.2 (i686-posix-dwarf-rev3, Built by MinGW-W64 project)
至此,你的開發環境已經搭建好了,很簡單吧

第二部分:下載bitcoin引用的外部庫
我們把它們全部放在 C:\deps目錄下

2.1 安裝OpenSSL
進入啟動 MinGw shell 比如目錄:(C:\MinGW\msys\1.0\msys.bat)運行這個msys.bat,就會啟動一個shell環境,提示符是$
輸入命令
cd /c/deps/
tar xvfz openssl-1.0.1g.tar.gz
cd openssl-1.0.1g
Configure no-shared no-dso mingw
make
等待幾分鍾後,就把openssl編譯好了。

2.2 下載Berkeley DB
我們推薦使用 4.8版本
同樣在msys shell環境下輸入以下命令
cd /c/deps/
tar xvfz 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
等待編譯

2.3 安裝Boost
msys命令:
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

2.4 安裝Miniupnpc
cd C:\deps\miniupnpc
mingw32-make -f Makefile.mingw init upnpc-static
msys shell命令
cd /c/deps/protobuf-2.5.0
configure --disable-shared
make

2.6 qrencode:
命令
cd /c/deps/libpng-1.6.10
configure --disable-shared
make
LIBS="../libpng-1.6.10/.libs/libpng16.a ../../mingw32/i686-w64-mingw32/lib/libz.a" \
png_CFLAGS="-I../libpng-1.6.10" \
png_LIBS="-L../libpng-1.6.10/.libs" \
configure --enable-static --disable-shared --without-tools
make

2.7 安裝 Qt 5 庫
下載和解壓縮
在 windows命令行輸入:
set INCLUDE=C:\deps\libpng-1.6.10;C:\deps\openssl-1.0.1g\include
set LIB=C:\deps\libpng-1.6.10\.libs;C:\deps\openssl-1.0.1g
cd C:\Qt\5.2.1
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-linked -no-dbus -no-audio-backend -no-wmf-backend -no-qml-debug
mingw32-make
set PATH=%PATH%;C:\Qt\5.2.1\bin
cd C:\Qt\qttools-opensource-src-5.2.1
qmake qttools.pro
mingw32-make

3. 下載Bitcoin 0.9.1
在msys shell下輸入以下命令行:
cp /c/deps/libpng-1.6.10/.libs/libpng16.a /c/deps/libpng-1.6.10/.libs/libpng.a
cd /c/bitcoin-0.9.1
./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 \
-I/c/deps/protobuf-2.5.0/src \
-I/c/deps/libpng-1.6.10 \
-I/c/deps/qrencode-3.4.3" \
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 \
-L/c/deps/protobuf-2.5.0/src/.libs \
-L/c/deps/libpng-1.6.10/.libs \
-L/c/deps/qrencode-3.4.3/.libs" \
./configure \
--disable-upnp-default \
--disable-tests \
--with-qt-incdir=/c/Qt/5.2.1/include \
--with-qt-libdir=/c/Qt/5.2.1/lib \
--with-qt-bindir=/c/Qt/5.2.1/bin \
--with-qt-plugindir=/c/Qt/5.2.1/plugins \
--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 \
--with-protoc-bindir=/c/deps/protobuf-2.5.0/src
make
strip src/bitcoin-cli.exe
strip src/bitcoind.exe
strip src/qt/bitcoin-qt.exe

這樣,你就得到了變異好的 bitcoin-cli.exe和bitcoind.exe ,bitcoin-qt.exe(windows QT圖形界面的錢包軟體)

熱點內容
普通家用電腦能挖比特幣嗎 發布:2025-07-26 16:23:50 瀏覽:297
幣圈tc是什麼意思啊 發布:2025-07-26 16:15:02 瀏覽:865
以太坊哪個挖礦軟體好 發布:2025-07-26 16:10:40 瀏覽:811
eth32枚有什麼用處 發布:2025-07-26 16:08:02 瀏覽:971
比特幣的工作量證明機制 發布:2025-07-26 15:59:13 瀏覽:910
eth行業前景 發布:2025-07-26 15:59:02 瀏覽:926
比特幣和挖礦機啥原理 發布:2025-07-26 15:44:50 瀏覽:931
區塊鏈的通證是共識演算法嗎 發布:2025-07-26 15:39:54 瀏覽:915
比特幣勒索病毒分布 發布:2025-07-26 15:38:27 瀏覽:651
比特幣挖礦機多長時間挖出一個 發布:2025-07-26 15:34:24 瀏覽:233