【发布时间】:2017-01-25 06:12:06
【问题描述】:
使用说明 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
我的构建环境:
- 带有 gcc 版本 6.3.0 的 MSYS2(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 工作正常。
【问题讨论】:
-
我遇到了同样的问题。这可能是 ICU 58 配置脚本中的一个错误,因为 MinGW-w64 从未提供过
_create_locale/_free_locale(尽管它们在标题中定义,但它们在msvcrt.dll中不存在,MinGW-w64 链接到)。你试过邮件列表吗?