Ubuntu比特币
A. 如何在windows平台下编译比特币bitcoin客户端
你要编译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)
至此,你的开发环境已经搭建好了,很简单吧
B. 如何通过比特币钱包地址QR码存钱
通过安全的加密技术存储数字货币,只需要有个合约地址就可以转币,这个钱包的作用,可以让你在不用币的时候,将币放在钱包里,比在交易所的安全系数要高些。
钱包其实是作为一个地址协议,因为区块链上所有的交易都是全网记录的,每一枚比特币交易到一个地址都是全网记录不可篡改以此来记录,比特币到你钱包的时候每一个人都可以看到记录以此证明。
与大多数传统货币不同,比特币是一种数字货币。因此,这种货币的方法是完全不同的,特别是在获取和存储它时。由于比特币不存在任何物理形状或形式,因此技术上无法存储在任何地方。相反,它是用于访问您的公共比特币地址的私钥,并签署需要安全存储的交易。收件人的公钥和私钥的组合使得比特币交易成为可能
有几种不同形式的比特币钱包,可满足不同的需求,并在安全性,便利性,可访问性等方面有所不同。
纸质钱包
纸质钱包本质上是一个文档,其中包含可用于接收比特币的公共地址和私钥,允许您花费或转移存储在该地址的比特币。这些通常以QR码的形式打印,以便您可以快速扫描它们并将密钥添加到软件钱包中以进行交易。
可以使用BitAddress或Bitcoinpaperwallet等服务生成纸质钱包,允许用户创建完全随机的比特币地址和私钥。然后可以打印生成的文档,其中一些服务提供防篡改设计,甚至可以选择订购全息标签,并且可以使用。
纸币钱包的主要优点是键不会以数字形式存储在任何地方,这使得它完全不受黑客攻击,可以记录用户击键的恶意软件以及基本上任何形式的数字盗窃。但是,仍然需要在创建钱包时采取一些预防措施。
显然,在生成纸质钱包之前,您需要确保没有人在看着您这样做。为了排除任何间谍软件监控活动的风险,建议使用从USB闪存驱动器或DVD运行的干净的操作系统,如Ubuntu。
此外,一旦设置了纸质钱包,网站代码应该能够脱机运行,这允许您在实际生成密钥之前断开与Internet的连接。最后,使用未连接到网络的打印机。
此外,了解您在一张纸上打印有价值的私人信息非常重要。因此,您需要采取某些措施来保护那张纸。例如,建议将其放在密封的塑料袋中,以防止水,潮湿和一般磨损,有些人喜欢将其层压并存放在保险箱,存放箱中或委托律师处理。
物理比特币
物理比特币通常预加载固定数量的BTC,并且意图是只要私钥保持隐藏就不能花费它的值。这通常通过实施防篡改密封来实现。
Bitbill的第一款产品就像一张信用卡,但其后的大多数替代品都被塑造成一枚圆形奖牌。Mike Cadwell是一位绰号为“Casascius”的加密货币爱好者,他在2011年创造了第一款流行的Casascius实体比特币。
私钥被隐藏在可剥离的全息图下,当它被移除时,它留下了防篡改模式。在兑换时,硬币失去了数字价值。从那以后,有几家新的硬币制造商。
物理比特币是一种非常方便的方式,可以更安全地存储您的资金,在离线交易时非常有用。最重要的是,他们最近成为珍贵的收藏品。然而,主要的缺点是严重安全问题。
2013年11月,Mike Cadwell被要求停止金融犯罪执法网络的运营,因为他的工作被认为是货币发送者。这项活动的规定难以承受,因此他不得不停止销售包含数字比特币的物品。由于BTC在许多国家仍然是一个合法的灰色地带,这些物品甚至可能被当局视为假币。
移动
对于那些积极利用每天的比特币,在商店支付商品或交易他们面对面面对面,移动钱包BTC是一个必不可少的工具。它运行作为智能手机的应用程序,存储你的私钥,并允许您直接从您的手机支付的东西。
此外,一些应用程序使用户能够使用他们的智能手机近场通信功能,这意味着它们可以简单地点击他们的电话反对读者,而不必在所有提供的任何信息。
任何完整的比特币客户端都需要访问整个区块链分类账,该分类账不断增长,需要几千兆字节的存储空间。因此,移动钱包利用简化的支付验证(SPV)技术。它们仅适用于区块链的非常小的子集,依赖于比特币网络中的可信节点,以确保它们具有正确的信息。
尽管比特币存储是一种方便的移动解决方案,但移动钱包很容易受到黑客攻击。此外,如果有人只是访问您的移动设备,您可能会失去对钱包的控制权。在Android上运行的设备有各种各样的比特币钱包应用程序。Apple于2014年2月从AppStore中禁止比特币钱包,但在几个月后撤销了其决定。
Web钱包
Web钱包将您的私钥存储在提供此类服务的公司的服务器上。服务器始终在线并由其他人控制。不同的服务提供不同的功能,其中一些功能连接到移动和桌面钱包,在您拥有的设备上复制您的地址。
与移动钱包非常相似,电子钱包使用户可以通过连接到互联网的任何设备随时随地访问他们的资金。但除非正确实施,否则运营该网站的组织可能会访问您的私钥,从而完全控制您的资金。此外,一些电子钱包在交易所的基础上运营,并且有些交易所关闭和逃离用户的资金。
桌面钱包
桌面钱包已下载并安装在您的计算机上,将您的私钥存储在硬盘上。根据定义,它们比在线和移动钱包更安全,因为它们不依赖第三方获取数据并且更难窃取。它们仍然连接到互联网,这使它们本身就不安全。但是,对于那些从他们的计算机上交易少量比特币的人来说,桌面钱包是一个很好的解决方案。
桌面钱包有多种不同的选择,可满足不同的需求。一些专注于安全性,一些专注于匿名性等。
硬件
硬件钱包是一种相当独特的比特币钱包,可将用户的私钥存储在安全的硬件设备中。这是存储任何数量的比特币的最安全的方式,没有可验证的钱从硬件钱包中被盗的事件。
与纸钱包不同,纸钱包必须在某些时候导入软件,硬件钱包可以安全和交互使用。此外,它们不受计算机病毒的影响,所存储的资金不能以明文形式传输出设备,在大多数情况下,它们的软件是开源的。
有些硬件钱包甚至还有屏幕,这增加了另一层安全性,因为它们可以用来验证和显示重要的钱包细节。例如,屏幕可用于生成恢复短语并确认您要进行的付款的金额和地址。因此,只要您投资一个由值得信赖且称职的制造商制造的具有良好声誉的真实设备,您的资金将是安全可靠的。
比特币钱包和安全
可能的问题 :
捕获恶意软件。恶意软件可以扫描您的磁盘并找到您的私钥。几秒钟之后,你所有的比特币都可以消失。特洛伊木马可以加密硬盘上的所有文件。之后,它可能会找到你钱包的所有链接,意识到你拥有多少钱并要求确切数量的比特币来解密你的硬盘。
虚拟交换可以用你的钱逃跑。您可以丢失安装在其上的钱包的笔记本电脑或手机。
建议 :
避免使用任何需要互联网连接的钱包;请改用冷藏选项。
要小心谨慎,仔细检查一切。例如,您可以收到一封来自BlockWallet的电子邮件,但它实际上来自BlokcWallet,如果您授权,您的比特币将立即消失。
C. 如何在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中安装软件也是一种乐趣!
D. Electrum比特币钱包在ubuntu下怎么安装
第一步, 找一台新电脑或硬盘低级格式化后的旧电脑,在断网的状态下安装Linux操作系统Ubuntu(下图是使用U盘安装ubuntu的示例):
第二步, 安装Electrum 比特币钱包。
安
装完Ubuntu Linux操作系统后, 离线安装Electrum比特币钱包(笔者个人比较喜欢Electrum,
各位也可以使用Multibit等其他轻钱包)
第三步,生成新的冷钱包地址
安
装完以后, 打开Electrum, 并创建新的钱包, 按照图四到图八的步骤生成新的冷钱包地址, Electrum缺省情况下是一次创建5个新地址,
E. 如何在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中也是一种乐趣!
F. electrum比特币钱包在ubuntu下怎么安装
第一步, 找一台新电脑或硬盘低级格式化后的旧电脑,在断网的状态下安装Linux操作系统Ubuntu(下图是使用U盘安装ubuntu的示例):
第二步, 安装Electrum 比特币钱包。
安
装完Ubuntu Linux操作系统后, 离线安装Electrum比特币钱包(笔者个人比较喜欢Electrum,
各位也可以使用Multibit等其他轻钱包)
第三步,生成新的冷钱包地址
安
装完以后, 打开Electrum, 并创建新的钱包, 按照图四到图八的步骤生成新的冷钱包地址, Electrum缺省情况下是一次创建5个新地址,
注意图八, 在命令行键入 “listaddressese()"的命令,
系统会列出新创建的5个比特币地址,再用getpubkeys命令,或者从菜单 master public
key拿到公钥(公钥和地址不是同一个概念哦), 请把这个公钥拷贝下来, 另存到一个文本文件里。图九是显示这5个新地址的私钥,
放着这里只是给大家说明一下,用来和图十二对比, 5个私钥是在这个永不触网的linux操作系统里的钱包里,
大家实际操作中不要做图九这个步骤。也不要把自己的私钥告诉其他任何人。
G. 你们最近听过“比特币勒索病毒”吗你们电脑中招了吗
wannacry,蠕虫病毒,把系统文件加密,局域网开445端口容易中毒,一般电脑打过漏洞补丁一般不会中毒
H. 请问哪里有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图形界面的钱包软件)
I. 如何在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图形界面的钱包软件)
J. 如何在windows平台下编译比特币bi
比特币(BitCoin)的概念最初由中本聪在2009年提出,根据中本聪的思路设计发布的开源软件以及建构其上的P2P网络。比特币是一种P2P形式的数字货币。点对点的传输意味着一个去中心化的支付系统。
与大多数货币不同,比特币不依靠特定货币机构发行,它依据特定算法,通过大量的计算产生,比特币经济使用整个P2P网络中众多节点构成的分布式数据库来确认并记录所有的交易行为,并使用密码学的设计来确保货币流通各个环节安全性。P2P的去中心化特性与算法本身可以确保无法通过大量制造比特币来人为操控币值。基于密码学的设计可以使比特币只能被真实的拥有者转移或支付。这同样确保了货币所有权与流通交易的匿名性。比特币与其他虚拟货币最大的不同,是其总数量非常有限,具有极强的稀缺性。