我下载了最后一个ICU版本(49)二进制文件,并将以下arg添加到b2:
-sICU_PATH="D:\lib64\icu"
我得到了
gcc.link D:\boost\1.51.0\boost\boost\bin.v2\libs\locale\build\gcc-mingw-4.7.1\debug\has_icu64.exe
d:/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -licui18n
d:/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -licudata
collect2.exe: error: ld returned 1 exit status
在icu二进制文件中没有这样的libicui18n,libicudata。
所以我试着自己构建它。我收到了这个错误
PATH=../../lib:../../stubdata:../../tools/ctestfw:$PATH ../../bin/genrb -e UTF-8 -s resources -d uconvmsg root.txt
Makefile:173: recipe for target `uconvmsg/root.res' failed
make[2]: *** [uconvmsg/root.res] Error 127
有人可以建议我如何使用MinGW使用ICU构建Boost吗?
答案 0 :(得分:2)
1。)您下载的软件包中的库名为icuin49.dll
,icudt49.dll
。我们定期使用mingw(和许多其他平台)进行测试,但不发布这些二进制文件。
2。)uconv只是一个额外的。您可以在配置行上使用--disable-extras
禁用它。 (没有足够的信息告诉我它失败的原因。)