‘壹’ 如何把mingw安装在msys的根目录
安装前请先务必卸载其他版本的MinGW。
1. 首先安装MinGW-w64。
========== 安装方法 A ==========
下载地址:http://sourceforge.net/projects/mingw-w64/?source=recommended
而后启动该 .exe文件,开始安装。安装开始时,需要注意设置为如下图所示。安装目录设为 C:\MinGW,这个目录是MinGW推荐的。由于是在线下载、核升安装,所以耗时大概为30分钟。
安装完成后,需要将路径 C:\MinGW\mingw64\bin 添加到PATH环境变量中。此时启动cmd窗口,输入 gcc -v,则可以查看到gcc编译器的版本信息。
备注:
A. 不同于以往的MinGW安装包,该MinGW-w64只包含了MinGW编译器本身,而不包含MSYS等组件,因此在后续并不会弹出Windows 中OpenBlas 的安装 - Windows 32bit 适用 中所示的宽肆组件选择安装界面。MinGW-w64只是单纯的编译器安装包,这也是为什么本文中需要单独安装MSYS的原因。
B. 由于后续MSYS可能调用make命令,而MinGW系列只提供了名字为 mingw32-make.exe 的执行文件(C:\MinGW\mingw64\bin 路径下),事实上,该.exe 和make.exe 功能一样,为了make执行时能找到该文件,建议复制 mingw32-make.exe 一份,并将复制文件命名为'make.exe'。
========== 安装方法 B ==========
方法A需要在线下载、安装,因此对网络有要求(我第二次用A方法安装MinGW遇到的问题就是:可以浏览网页并下载mingw-w64-install.exe,但后续的在线安装就出问题: Cannot download repository.txt [0],具体原因没有找到,只怪学校的网络管得太...)。通过如下链接:
http://sourceforge.net/p/mingw-w64/mailman/message/32967954/
直接下载合适配置的、已编译的MinGW64文件库,放到C:\MinGW目录下,改巧老并同方法A一样进行后续处理。具体下载哪个版本,可以参考方法A中的setting,或者结合自己的需求。
2. 安装 MSYS。
下载地址: http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/
在该下载页面中,应该下载的是下图中README.txt下面的压缩包文件,而非‘Download mingw-builds-install.exe’。
下载后,解压缩,可看到文件内有msys文件夹,将msys文件夹整体移动到路径 C:\MinGW 下。在msys文件夹内,会看到 msys.bat 文件,双击则启动MSYS,在MSYS中则可使用UNIX下的命令行,如make。
备注:
A. 在MSYS中,可用 'where make' 来查看可供调用的 make.exe 位置。
‘贰’ MinGW中msys.bat编译c++程序,源文件应该放在什么位置
先用cd 命令 进入 源文件所在文件夹
msys环境
c:\ 就是 /c
d:\ 就是 /d
.........
MSYS 文件夹被模拟为unix下的 /
若果你直接把源文件放在
MSYS\home\Administrator
那么直接
g++ 就可以了
否则 就要 用cd命令 切目录
假设 你放在MSYS\home\Administrator\mycode
那就先 cd mycode
所以也可以用绝对路径 cd /MSYS\home\Administrator\mycode
...........
请去学学cd ls pwd 等命令的用法
‘叁’ 怎么使用xerces解析xsd
一、Xerces简介
Xerces是一个开放源代码的XML语法分析器。Xerces-C++ 的前身是 IBM 的 XML4C 项目。XML4C 和 XML4J 是两个并列的项目,而 XML4J 是 Xerces-J的前身。IBM 将这两个项目的源代码让与 Apache 软件基金会(Apache Software Foundation),他们将其分别改名为 Xerces-C++ 和 Xerces-J。从JDK1.5以后,Xerces就成了JDK的XML默认实现。
Xerces-C++ (通常也称为:Xerces-C)是一套健壮、强大(同时也很庞大)的 XML 解析库,它提供了验证,以及 SAX 和 DOM API。XML 验证在文档类型定义(Document Type Definition,DTD)方面有很好的支持
二、安装xerces
windows下安装稍微麻烦一点,所以在此主要讲解下windows下安装使用xerces的方法,linux下安装的方法比较多,大家可以在网上找找。
Xercesc在windows和linux下都需要先编译后使用。在 UNIX或备衡者类UNIX(比如GUN/Linux、Max OS X、Cygwin、MinGW-MSYS)的环境下编译时,xerces-c均采用GNU automake-base风格的编译过程,这一过程通常分为三步:configure(配置)、make(编译)、make install(安装),这些步骤都需要在msys系统中进行。[1]
我的开发工具选用的是eclipse-cpp,需要安装msys插件,安装后进入msys文件夹(注意msys文件夹在你的开发工具目录下),直接运行msys.bat批处理文件即可运行msys,注意msys是UNIX风格与Windows风格的杂合体,请特别注意前述输入命令中,‘/’的方向与Windows下用于表达路径的‘\’方向正好相反,另外, C字母之后也没有Windows通常用于表示盘符‘:’。
下面详细介绍下安装的过程以及可能出现的滚咐问题和解决方法:
1、 configure(配置)
运行msys,进入Xercesc所在目录,在msys中输入以下命令(注意,实际输入时仅一行):
./configure --enable-netaccessor-winsock --enable-transcoder-windows LDFLAGS=-no-undefined --with-PACKAGE
这个配置命令的时间可能需要5分钟左右,可以在msys屏幕中看到一些配置的详细情况,如果在屏幕中没有出现error错误,表示大滚纯配置成功
‘肆’ c语言 正则库 pcre 教程 (windows环境)
1、编译PCRE正则表达式库
(1) (MinGW + MSYS)
将PCRE源码包直接拷贝到MSYS目录下,(如:C:\MSYS\1.0\pcre\)
运行msys.bat启动MSYS,
在命令行输入
cd / // 回根目录
cd pcre // 进入PCRE目录
./configure // 配置编译
make // 编译全部
完成后,会在C:\MSYS\1.0\pcre\.libs\ 下生成所需要的文件:
libpcre-0.dll // PCRE的动态链接库
libpcre.dll.a // 调用PCRE动态链接库所用的LIB
libpcre.a // PCRE静态链接库
再配合上C:\MSYS\1.0\pcre\目录下的"pcre.h",就可以在程序中加入正则表达式支持了:)
(2) (于windows平台手动编译pcre,转载)
将 config.h.generic 重命名为 config.h
设置其中的 HAVE_BCOPY 参数为 0 (因为windows平台无b()函数)
重命名 pcre.h.generic 为 pcre.h.
重命名 pcre_chartables.c.dist 为 pcre_chartables.c.
编译 dftables.c 成可执行文件,要加入参数 -DHAVE_CONFIG_H,以便导入 config.h 文件中的设置
/* 重命名 pcre_chartables.c.dist 为 pcre_chartables.c */
运行编译的可执行文件 dftables.exe ,参数为 pcre_chartables.c
即 dftables.exe pcre_chartables.c
新建工程,包含下列文件,编译成lib文件即可
pcre_internal.h
ucp.h
ucpinternal.h
ucptable.h
pcre_chartables.c
pcre_compile.c
pcre_config.c
pcre_dfa_exec.c
pcre_exec.c
pcre_fullinfo.c
pcre_get.c
pcre_globals.c
pcre_info.c
pcre_maketables.c
pcre_newline.c
pcre_ord2utf8.c
pcre_refcount.c
pcre_study.c
pcre_tables.c
pcre_try_flipped.c
pcre_ucp_searchfuncs.c
pcre_valid_utf8.c
pcre_version.c
pcre_xclass.c
这样就可以生成 libpcre.a 文件了 (vc,bcc生成的是pcre.lib,大同小异)
2、使用生成的 libpcre.a (静态链接库)
在你的程序中添加:
#define PCRE_STATIC // 开启静态链接库支持(一定要添加该行,否则无法使用静态链接库)
#include "pcre.h" // PCRE头文件
并且添加 libpcre.a 到工程中,然后就可以在程序中使用PCRE函数了:)
编译选项 添加 /MT ,无头文件预编译.
3、使用生成的 libpcre-0.dll 和 libpcre.dll.a (动态链接库)
在你的程序中添加:
#include "pcre.h" // PCRE头文件
并且添加 libpcre.dll.a 到工程中,然后就可以在程序中使用PCRE函数了:)
================================================================================
命令行下的批处理解决方法 .如果已经下载,可以不用第一行.
goto START
首先确保控制台环境中有:
1、VC6命令行编译环境
2、wget.exe、unzip.exe、sed.exe、mv.exe
然后执行这个批处理文件,就可以得到VC版本的pcr.lib。
:START
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.7.zip
unzip pcre-7.7.zip
cd pcre-7.7
sed -e "s/#define HAVE_BCOPY 1/#define HAVE_BCOPY 0/g" config.h.generic > config.h
mv pcre.h.generic pcre.h
mv pcre_chartables.c.dist pcre_chartables.c
cl -MD -DHAVE_CONFIG_H dftables.c
dftables.exe pcre_chartables.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_chartables.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_compile.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_config.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_dfa_exec.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_exec.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_fullinfo.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_get.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_globals.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_info.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_maketables.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_newline.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_ord2utf8.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_refcount.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_study.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_tables.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_try_flipped.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_ucp_searchfuncs.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_valid_utf8.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_version.c
cl -O1 -MD -DHAVE_CONFIG_H -c pcre_xclass.c
lib -out:libpcr.lib pcre_chartables.obj pcre_compile.obj pcre_config.obj pcre_dfa_exec.obj pcre_exec.obj pcre_fullinfo.obj pcre_get.obj pcre_globals.obj pcre_info.obj pcre_maketables.obj pcre_newline.obj pcre_ord2utf8.obj pcre_refcount.obj pcre_study.obj pcre_tables.obj pcre_try_flipped.obj pcre_ucp_searchfuncs.obj pcre_valid_utf8.obj pcre_version.obj pcre_xclass.obj
这样就出来了: pcre.h + libpcr.lib
==============================================================================
最近使用VC编译了一下她的源代码,其实步骤很简单, 如下
1 一些源文件改名
config.h.generic 改名为 config.h (注意里面的配置)
pcre.h.generic 改名为 pcre.h
pcre_chartables.c.dist 改名为 pcre_chartables.c
2 建立VC工程
建立一个VC的DLL工程,去掉原有的包含文件
将PCRE的所有pcre_*.c都加进去, pcre后面没有_的不要加, 后缀名是.cc的不要加
可以参考上面的.还有.h 文件也是要的.
3 修改工程设置
增加工程预编译宏 HAVE_CONFIG_H
不使用预编译头 Not Using Precompiled Headers
编译选项 添加 /MT
OK 完成以上三步,就可以在 VC 上编译通过了。
4 编译结果
使用时只需要编译出来的 .DLL .Lib 和 源代码目录的 pcre.h
‘伍’ MSYS是什么,他与CYGWIN有什么区别
MSYS是windows的.dll/.exe等文件的库文件,
库文件就是帮你实现了某些功能的库函数的封装,你可以在你的程序中调用这些函数,然后连接一下就可以了。
区别:
cygwin/gcc和MinGW都是gcc在windows下的编译环境
cygwin/gcc完全可以和在linux下的gcc化做等号,这个可以从boost库的划分中可以看出来端倪,cygwin下的gcc和linux下的gcc完全使用的是相同的Toolsets。
所以完全可以和linux一起同步更新gcc版本,而不用担心问题,并且在cygwin/gcc做的东西(不用微软的)可以无缝的用在linux下,没有任何问题。是在windows下开发linux程序的一个很好的选择。但是在cygwin/gcc下编译出来的程序,在windows执行必须依赖cygwin1.dll,如果不想依赖这个东西的化,必须在gcc的编译选项中加入-mno-cygwin。加入这个选项其实gcc编译器就会自动的选择在安装cygwin/gcc时安上的mingw,这个mingw就是gcc的一个交销森叉编译。
对于mingw作为gcc在windows上的一个实现,由于不像cygwin的gcc在一个模拟linux上运行,同时相当一部分linux的工具不能够使用,不过现在已经有Msys这个模拟unix的shell,可以解决很多的问题,不过没有cygwin好用,而cygwin/gcc的no-cygwin选项又依赖于mingw的支持,所以更新的更慢的,现在只是到3.3.3。在mingw下也是可以升级gcc的,不过需要使用msys。升级方法和在cygwin和linux下差不多,就不再罗嗦了。不过就我的升级经验来看好像都不太顺利。具体深入的测试,我也没有时间做了。
也是可以让cygwin的最新安装的gcc支持no-cygwin,需要再做一遍交叉编译,但是我不会蠢橡做,只好算了,呵呵,也许那一天我把这个搞定,再开一个贴吧。
根据以上的分析,如果在windows开发linux程序,cygwin是很好的选择。亏档亩如果你开发的程序不介意有一个cygwin1.dll的话,也是可以选择cygwin的。如果你是想开发windows下的程序,还要必须用gcc的化,mingw是很好的一个选择。但是在windows下有太多的编译器了,bc,vc,intel c.....。
顺便说就题外的化,据说gcc4.0.0性能有很大的提升,如果我升级完gcc4后,再编译一把gcc4是不是以后的编译性能会提高很多呢?有机会一定要测试一下了,呵呵。
一个技巧:如何知道当前版本的gcc的安装配置,用命令:gcc -v就可以了,呵呵。
‘陆’ 如何安装Minimal SYStem
该软件是有绿色版和安装版两种。如果只装MSYS核心包,大小不足10M。
对于不需要编译C++的朋友,可以不安装Mingw。
下载其中的MSYS Base System就可以,下载以后直接安装。
如果要安装Mingw,注意不要将它与MSYS安装到同一个目录里面。
另外,MSYS DTK是一个附加的开发工具包,包括Perl、autoconf、automake、libtool等工具,如果需要可以一块下载装到MSYS同一个目录里。这样安装完成应该就可以使用了。
但是,官方安装说明还有一个步骤用绿色版的MSYS覆盖MSYS安装目录的内容,好吧不管出于什么理由,将msysCORE-XXXXXXXX-bin.tar.gz解压到MSYS安装目录选择覆盖即可。
然后,点击桌面或者开始菜单的M图标,就可以启动MSYS窗口了。
MSYS默认是没有VIM编辑器的,不知你是否需要,对于我反正不太方便。
下载MSYS vim装上(居然采用lzma格式压缩)。
装好以后,启动进入MSYS窗口。
本机磁盘如C:,D:,E:可以通过/c, /d,/e等访问,C:\Windows\system32在MSYS中就变成/c/windows/system32。
可以通过编辑/etc/fstab文件,加入想要访问目录的快捷路径。比如想要用/ffdown访问E:\AppCache\Firefox\Download目录,可以先在根目录建立该目录,即mkdir /ffdown
然后,编辑/etc/fstab,加入下面一行就行了
e:/AppCache/Firefox/Download /ffdown
如果需要MSYS与Mingw关联,可以在fstab中加入
<你的Mingw路径> /mingw
注意:fstab文件的换行符需要使用UNIX格式的LF,而不是DOS格式的CRLF。
也就是说fstab文件需要在MSYS系统中进行编辑,不要在Windows中用记事本等编辑器编辑,除非你知道如何将DOS格式转化为UNIX格式。
MSYS存在的一个缺陷是对中文路径和中文文件名支持有问题,使用ls命令查看时,中文文件和目录显示为???。
临时解决核薯方则灶法是,可以使用TAB补全来显示中文名称,或者使用 ls--show-control-chars 命令查看。
默认设置下,MSYS系统无法访问Windows系统中的dir等命令,而Windows的CMD中也无法访问MSYS的命令。
可以在MYS中运行 rxvt -e cmd,出现的窗口可以支持中文文件名,而且既可以使用Windows命令也孙氏扮可以使用MSYS的命令。
另外,发现MSYS默认居然自带了一个telnet,支持中文但并不很完善,可以用来登录BBS。还有一个访问ftp的客户端。
PS.
1.安装MinGW-5.1.6.exe
选择gcc,make,会在当前目录下生成配置文件mingw.ini和下载 如下包:
w32api-3.10.tar.gz mingw-runtime-3.13.tar.gz
mingw32-make-3.8.1-2.tar.gz
gcc-g++-3.4.5-20060117-1.tar.gz
gcc-core-3.4.5-20060117-1.tar.gz
binutils-2.17.50-20060824-1.tar.gz 保留这下文件,
下次在安装时,安装程序检测到当前目录下以有的 文件就不在从新下载了.
默认安装到C:\MinGW目录下.
2.安装MSYS-1.0.10.exe
接受所有默认选项,最后会出项一个Dos窗口,都选择y,当询问 MinGW的按装路径时:
Please answer the following in the form of c:\msys
Where is your MinGW installation?
输入MinGW的安装路径C:/MinGW
3.安装msysDTK-1.0.1.exe 选择安装路径C:\MinGW\msys\1.0
4.安装其它工具包: mingw-utils-0.3.tar.gz :
包含了pexports等工具 gdb-6.7.50.20071127-mingw.tar.bz2
工具包的安装方法都差不多,只要装文件解压到MinGW的安装目录下就行了.
5.编译是连接其它dll库,如: 1 )pexports python24.dll
>python24.def 2)dlltool --dllname
python24.dll --def python24.def --output-lib
libpython24.lib 用libpython24.lib连接就行了
‘柒’ 在msys中,运行命令mingw-get install +软件名 提示:mingw-get:commond not found
在mingw-get所在的目录下运行就好了,或者把mingw-get所在的目录加到系统路径里面
‘捌’ msys怎么使用activeperl
ActivePerl只是一个解释器,自己写文本来运行,运行方式: 1,将文件保存为pl后悉弯册缀,然后双击 2,进入cmd使用“perl 程序文件名”来执行睁宏,如果没写文件名会进入闹蠢perl命令行
‘玖’ MinGW、MSYS、Cygwin是什么概念,彼此之间是什么关系
概念:
(1)MinGW,是Minimalist GNUfor Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。MinGW 是一组包含文件和端口库。
(2)MSYS即Minimal GNU(POSIX)system on Windows,是一个小型的GNU环境,包括基本的bash,make等等。是Windows下最优秀的GNU环境。
(3)Cygwin是一个在windows平台上运行的类UNIX模拟环境,是cygnus solutions公司开发的自由软件。
三者的关系:
Cygwin和 MSYS的角色是有重叠的,可以在Cygwin提供的环境下用MinGW的compiler&library来编出可单独执行的Windows 执行档,在MinGW的FAQ,就是把PATH设定正确,在Cygwin下使用MinGW的compiler & library即可 。
‘拾’ 如何在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图形界面的钱包软件)