ICU 58在MSYS2 / MinGW64中未定义参考

时间:2017-01-25 06:12:07

标签: icu mingw-w64

使用说明书 Compiling-ICU-with-MinGW 我收到以下错误

digitlst.o:digitlst.cpp:(.text+0x11): undefined reference to `_free_locale'
digitlst.o:digitlst.cpp:(.text+0x8fe): undefined reference to `_create_locale'
digitlst.o:digitlst.cpp:(.text+0xa20): undefined reference to `_create_locale'
collect2.exe: error: ld returned 1 exit status

我的构建环境:

  • MSYS2与gcc版本6.3.0(Rev1,由MSYS2项目建立)
  • 64位工具链:pacman -S mingw-w64-x86_64-toolchain
  • ICU 58.2来源ICU4C

我做了

unzip icu4c-58_2-src.zip
cd icu/source
./runConfigureICU MinGW prefix=$PWD/../dist
make

有人知道如何解决这个问题吗?

编辑:与58.1相同,但57.1工作正常。

1 个答案:

答案 0 :(得分:1)

我试图使用最新版本的ICU构建QT 5.8,这个问题突然出现......

我能够使用x86_64-6.3.0-posix-seh-rt_v5-rev1

链接libmsvcr100.a来构建icu4c-58_2

默认的libmsvcrt.a

似乎缺少这些功能