ICU(International Components for Unicode)是一个国际化的字符编码和转化的库。因为字符转化时,选定使用Boost.Locale,但Boost.Locale又需要使用ICU。因此,要编译ICU4C.
因此,将ICU4C的编译方法记录如下:
1. 下载ICU。 下载地址如下:http://site.icu-project.org/download/49
在ICU4C Source Code Download下,icu4c-49_1_2-src.zip 选项。
2. 解压Zip文件
在\icu\source\allinone下打开allinone.sln工程,分别编译出x64 release, x64 debug, x32 release, x32 debug 版本。(ICU的VS 工程已经设置好四个版本,只需要分别编译就可以了,方便)。ICU4C有一点不方便之处是工程名与生成的LIB/DLL不同,如下:
工程名 | Release 版本 | Debug 版本 |
Common | icuuc.lib | icuucd.lib |
i18n | icuin.lib | icuind.lib |
io | icuio.lib | icuiod.lib |
layout | icule.lib | iculed.lib |
layoutex | iculx.lib | iculxd.lib |
stubdata | icudt.lib | icudtd.lib |
testplug | testplug.lib | testplugd.lib |
toolutil | icutu.lib | icutud.lib |
3. 最终编译出来的库文件放在如下的工程目录中:
:\icu\
└—bin
└—bin64
└—include
└—lib
└—lib64
└—souce
其中,bin为32位的库文件夹,bin64为64位的文件夹。32位下,release名不变。Debug的文件命名以d结尾。如icuin49d.dll为debug版本,icuin49为release 版本。有一个文件例外:icudt49.dll的release和debug文件名相同。