ICU编译(VS2010):
ICU提供了unicode和国际化支持,目前的版本是4.8.1ICU的主页是/ 
(1). 下载
可以从sourceforge/projects/icu/files/下载源代码版本。4.8.1是VS2010的,4.4.2才是VS2008的,如果是2010要做转换。 
(2). 编译
ICU的编译比较简单,打开ICU源代码目录下的source\allinone\allinone.sln,需要转换到VS2008格式,直接转换即可。然后,选择releaseRebuild Solution即可。 
(3). 测试 
将编译出来的bin目录加入到系统的PATH目录中去。然后,重新打开allinone.sln工程。 
需要通过测试的项目 
1. cintltst项目 
2. intltest项目 
3. iotest 
分别设置成启动项目,运行即可。 
2. bzip
bzip的主页是 /,从/downloads.html下面下载源代码包即可,boost直接使用源代码来进行编译。 
3. zlib
zlib的主页是www.zlib/sourceforge/projects/gnuwin32/files/zlib/从该网页下面下载源代码包即可,boost直接使用源代码来进行编译。 
4. python
python的主页是/,下载python2.5.2版本,安装即可。boost默认是会编译python,并且会自动寻python的安装目录。
ICU编译(MinGW):
还未成功编译
第一步:到,下载boost最新版boost_1_47_0.zip
第二步:将boost压缩包解压到C盘根目录下(在C盘操作简单,不会出错),目录为C:\BOOST_1_47_0,里面就是boost的源码和需要编译的文件及文档资料
第三步:用打开一个cmd命令窗口,在C:\Program Files\Microsoft Visual Studio 10.0\VC\bin目录下到VCVARS32.bat,拖到cmd命令窗口,按回车
第四步:将cmd中的目录跳转到C:/boost_1_47_0/tools/build/v2下,拖动bootstrap.bat批处理文件到cmd,,按回车键,随即就会在C:/boost_1_47_0/tools/build/v2下生产一个和b2.exe。
第五步: 将复制或移动到boost的根目录下,即C:/boost_1_47_0下面。
第六步:将cmd命令中的目录跳到boost的根目录下,然后,输入
bjam --toolset=msvc-10.0 --build-type=complete stage 回车,等待20多分钟,编译就完成了
注意:整个操作过程中cmd命令窗口必须保证是开始打开的那个
附1:cmd 目录跳转指令 举例,例如,跳到d盘下的一个名为test的目录下,则输入cd  d:\test按回车。
附2:最终生成的我们所需的文件在C:\boost_1_47_0\bin.v2\libsC:\boost_1_47_0\stage\lib当中, bin.v2stage目录及它们的子目录都是编译时自动创建的,为了使用方便,建议做以下处理:
bin.v2stage目录下分别搜索后缀名为 .dll和.lib的文件,然后就它们移动到一个新建目录下,比如boost_files文件夹下,
然后在vc2010的工程目录下include项中包含C:\boost_1_47_0\bin.v2\libs,在lib目录下包含boost_files目录(自己最后保存编译的dll和lib文件的目录)
使用时,要在工程中包含相应的头文件。
最后申明:我是亲手实验每一步的过程所得结果,因为编译器版本和操作的原因,如您不能正常编译,请仔细检查原因或与给我留言。
其他版本也可用类似的方法进行编译
1. 至/users/history/version_1_48_0.html下载boost最新版1.48.0;
2. 解压缩后,运行bootstrap.bat批处理文件,得到;
3. 进入VS2008的Command Prompt (方法:Tools -> Visual Studio 2008 Command Prompt),转到boost目录。(例如,我的boost目录:D:\boost_1_48_0)
4. 输入bjam --toolset=msvc-9.0 --build-type=complete stage后,等待约1小时,完成编译。编译成的lib文件,放在stage\lib下,形如“libboost_program_options-vc90-sgd-1_48.lib”.
备注:对于一般使用,可以选择编译boost库(毕竟完整编译需要时间还是比较长的),例如我一般编译如下几个boost常用库system, thread, date_time, filesystem, serialization,则相应的bjam命令如下:
bjam --toolset=msvc-9.0 architecture=x86 address-model=64 --with-system --with-thread --with-date_time --with-filesystem --with-serialization
其中:msvc-9.0代表编译成VC9.0(即VS2008)版本,对应的msvc-10.0代表编译成VC10.0(即VS2010)版本; address-model=64代表编译成64位版本,如省略此项,默认为编译成32位版本。
【原】Boost下载安装编译配置使用指南(含Windows和Linux)
——更新于2011/7/19,目前我已对boost的安装和使用有了新的认识,因此也会对两年前写的这篇文章做大幅修改,网上转载版本泛滥,请以本文为准。
理论上,本文适用于boost的各个版本,尤其是最新版本1.47.0;适用于各种C++编译器,如VC6.0(部分库不支持),VS2003,VS2005,VS2008,VS2010,gcc,C++ Builder等。先总结一下Windows系统。
一、下载
首先从boost官方主页/下载最新版boost安装包,或者使用Subversion获取最新版本,地址是:/svn/boost/trunk。本人现在一般都用svn,这样可以很方便的进行update和build,而不是每次都下载新的安装包并rebuild。
二、安装
如果是使用下载的安装包,那么请将boost安装包解压至本地目录,如:E:\SDK\boost;如果是用svn的,也可以将boost的代码checkout到这个目录。因为boost一部分类是需要编译成库才能使用的,所以我们还需要准备好boost专用的编译辅助工具bjam。在命令提示符()中执行根目录下的bootstrap.bat,编译后的会自动拷贝到该目录下(bjam必须与boost-build.jam在同级目录)。
java编译器ide最新版下载三、编译
接下来就是最重要的编译步骤了。需要打开命令提示符()窗口并执行bjam,可以使用--help参数来查看命令帮助。这里详细讲解一下bjam的命令行参数,因为它非常重要。首先,它涉及到编程环境的搭建,你需要根据自己今后具体的使用环境来选择合适的命令行参数;其次,它影响到你的硬盘空间,完全编译的话据说在3G以上,如果你同时拥有2个以上的IDE(如VC6和VC9共存)而且都要用到boost,那么占用多少硬盘就自己算吧……虽说如今大家的硬盘空间都不成问题,但就像本人一样崇尚合理利用资源不习惯铺张浪费提倡节俭的童鞋应该大有人在,所以不需要的配置和不需要的库就可以不编译了。
综合以上两点因素,本人使用的bjam命令如下:
bjam stage --toolset=msvc-9.0 --without-graph --without-graph_parallel --without-math --without-mpi --without-python --without-serialization --without-wave --stagedir="E:\SDK\boost\bin\vc9" link=static runtime-link=shared runtime-link=static threading=multi debug release
下面详细解释一下每个参数的含义:
stage/install:stage表示只生成库(dll和lib),install还会生成包含头文件的include目录。本人推荐使用stage,因为install生成的这个include目录实际就是boost安装包解压缩后的boost目录(E:\SDK\boost\boost,只比include目录多几个非hpp文件,都很小),所以可以直接使用,而且不同的IDE都可以使用同一套头文件,这样既节省编译时间,也节省硬盘空间。
toolset:指定编译器,可选的如borland、gcc、msvc(VC6)、msvc-9.0(VS2008)等。
without/with:选择不编译/编译哪些库。因为python、mpi等库我都用不着,所以排除之。还有wave、graph、math、regex、test、program_options、serialization、signals这几个库编出的静态lib都非常大,所以不需要的也可以without掉。这可以根据各人需要进行选择,默认是全部编译。但是需要注意,如果选择编译python的话,是需要python语言支持的,应该到python官方主页/下载安装。查看boost包含库的命令是bjam --show-libraries

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。