自制libiconv错误

时间:2014-05-15 10:39:44

标签: macos terminal homebrew libiconv

我运行以下代码

+++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++ ................................................. < / p>

$ brew doctor

警告:/ usr / local / include不可写。 如果你&#34; sudo make install&#34;不受管理的软件 通过Homebrew。如果brew尝试将文件写入此目录,则 在链接步骤中安装将失败。

你应该chown / usr / local / include

警告:/ usr / local / lib / pkgconfig不可写。 如果你&#34; sudo make install&#34;不受管理的软件 通过Homebrew。如果brew尝试将文件写入此目录,则 在链接步骤中安装将失败。

你应该chown / usr / local / lib / pkgconfig

警告:/ usr / local / share / locale中的某些目录不可写。 如果你&#34; sudo make install&#34;没有管理的软件 通过Homebrew。如果brew尝试将区域设置信息添加到其中一个 目录,然后安装将在链接步骤中失败。 你应该知道他们:

的/ usr /本地/共享/区域设置 在/ usr / local / share下/区域/自动对焦 在/ usr / local / share下/区域/ AF / LC_MESSAGES ..... .......

警告:在系统前缀检测到gettext文件 这些文件可能导致编译和链接失败,尤其是如果它们 编译时使用了不正确的架构。考虑删除这些文件: /usr/local/lib/libgettextlib.dylib /usr/local/lib/libintl.dylib /usr/local/include/libintl.h

警告:在/ usr以外的系统前缀中检测到libiconv文件 Homebrew没有提供libiconv公式,并希望链接 / usr中的系统版本。其他前缀中的libiconv可能会导致 编译或链接失败,特别是如果编译不正确 架构。 OS X本身从不在/ usr / local中安装任何东西 它由用户或其他第三方软件安装。

tl; dr:删除这些文件: /usr/local/lib/libiconv.dylib /usr/local/include/iconv.h

警告:您已安装MacPorts或Fink: 的/ opt / local / bin中/端口

这可能会造成麻烦。您不必卸载它们,但您可能想要卸载它们 暂时将它们移开,例如

sudo mv / opt / local~ / macports

警告:在/ usr / local / lib中找到了未提交的dylib。 如果你没有故意将它们放在那里,那么它们可能会导致问题 构建Homebrew公式,可能需要删除。

意外的dylib: /usr/local/lib/libasprintf.0.dylib /usr/local/lib/libcharset.1.dylib /usr/local/lib/libcunit.1.dylib /usr/local/lib/libgettextlib-0.18.3.dylib /usr/local/lib/libgettextpo.0.dylib /usr/local/lib/libgettextsrc-0.18.3.dylib /usr/local/lib/libiconv.2.dylib /usr/local/lib/libintl.8.dylib /usr/local/lib/libjansson.4.dylib /usr/local/lib/libltdl.7.dylib /usr/local/lib/libsqlite3.0.dylib

警告:在/ usr / local / lib中找到了未编译的.la文件。 如果你没有故意将它们放在那里,那么它们可能会导致问题 构建Homebrew公式,可能需要删除。

意外的.la文件: /usr/local/lib/libasprintf.la /usr/local/lib/libcharset.la /usr/local/lib/libcunit.la /usr/local/lib/libgettextlib.la /usr/local/lib/libgettextpo.la /usr/local/lib/libgettextsrc.la /usr/local/lib/libiconv.la /usr/local/lib/libintl.la /usr/local/lib/libjansson.la /usr/local/lib/libltdl.la /usr/local/lib/libsqlite3.la

警告:在/ usr / local / lib / pkgconfig中找到了未提交的.pc文件。 如果你没有故意将它们放在那里,那么它们可能会导致问题 构建Homebrew公式,可能需要删除。

意外的.pc文件: /usr/local/lib/pkgconfig/cunit.pc /usr/local/lib/pkgconfig/jansson.pc /usr/local/lib/pkgconfig/libiconv.pc /usr/local/lib/pkgconfig/sqlite3.pc

警告:在/ usr / local / lib中找到了未提交的静态库。 如果你没有故意将它们放在那里,那么它们可能会导致问题 构建Homebrew公式,可能需要删除。

意外的静态库: /usr/local/lib/libasprintf.a /usr/local/lib/libcharset.a /usr/local/lib/libcunit.a /usr/local/lib/libgettextpo.a /usr/local/lib/libintl.a /usr/local/lib/libjansson.a /usr/local/lib/libltdl.a /usr/local/lib/libsqlite3.a

警告:您的酒窖中有未链接的桶 让桶没有链接可能导致构建问题并导致依赖的酿造 一旦建成,那些桶就无法正常运行。在这些上运行brew链接:

库尼特 .................................................. ....... ++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++

如果我给&#34; brew链接libiconv&#34;以下错误是 警告:libiconv仅为keg,必须与--force链接 请注意,这样做会干扰构建软件。

您能告诉我如何解决libiconv丢失错误。我安装了手动和酿造。但仍然会出现同样的错误。

我配置gcc编译代码时仍然出错

...........
checking for libiconv_open in -liconv... no
checking for iconv_open in -lc... no
checking for iconv_open in -liconv... no
configure: error: Could not find libiconv. Please install libiconv and libiconv-devel

请帮我解决这个问题。我仍然打破这个错误长达2天。我等你的回复了

1 个答案:

答案 0 :(得分:3)

哇!那里有很多东西需要修复!

它所说的&#34;你应该chown / usr / local / include&#34;,这意味着你应该运行:

chown -R `whoami` /usr/local/include

(同样适用于所有其他类似的消息。)

看起来你/ usr / local中有很多垃圾。我可能会把它移到其他地方(比如,/ usr / local-broken),然后重新安装自制软件。你可能会逃避运行

make uninstall

从您安装libiconv的地方开始。

一旦你解决了所有酿酒医生的警告,我就会说

LDFLAGS=-L/usr/local/opt/libiconv/lib CPPFLAGS=-L/usr/local/opt/libiconv/include brew install whatever

可能适合你!这样您就可以使用自制的libiconv文件进行编译。

祝你好运!