我正在尝试在Mac OS X Lion中编译GCC 4.5.1.
我有libiconv的问题.首先,它抱怨的建筑x86_64的未定义的符号,其分别为:_iconv,_iconv_open和_iconv_close.我发现MacPorts版本的libiconv将这些重命名为:_libiconv,_libiconv_open和_libiconv_close.所以我链接到/ usr/lib中的Mac OS本机libiconv而不是/ opt/local/lib中的MacPorts库.
Undefined symbols for architecture x86_64:
"_iconv", referenced from:
_convert_using_iconv in libcpp.a(charset.o)
__nl_find_msg in libintl.a(dcigettext.o)
(maybe you meant: __cpp_destroy_iconv, _cpp_init_iconv )
"_iconv_close", referenced from:
__cpp_destroy_iconv in libcpp.a(charset.o)
__cpp_convert_input in libcpp.a(charset.o)
__nl_free_domain_conv in libintl.a(loadmsgcat.o)
"_iconv_open", referenced from:
_init_iconv_desc in libcpp.a(charset.o)
__nl_init_domain_conv in libintl.a(loadmsgcat.o)
Run Code Online (Sandbox Code Playgroud)
但是,在这之后,我尝试从头开始重建它(清理和所有内容),但后来却抱怨未定义符号的不同点,但这次是_libiconv,_libiconv_open和_libiconv_close.
Undefined symbols for architecture x86_64:
"_libiconv", referenced from:
_identifier_to_locale in libbackend.a(pretty-print.o)
"_libiconv_close", referenced from:
_identifier_to_locale in libbackend.a(pretty-print.o)
"_libiconv_open", referenced from:
_identifier_to_locale in libbackend.a(pretty-print.o)
Run Code Online (Sandbox Code Playgroud)
我有什么想法可以解决这个问题吗?我找到了从MacPorts卸载libiconv的一些解决方案,但我不想这样做,因为我有很多端口取决于它.