2014-05-13 33 views
3

我在他们的网站上安装了mingw。 我安装了附带iconv和intl,msys和所有其他东西的开发包。我运行./configure,然后make install。虽然链接,它打印:为什么建筑物liblzma因“找不到图书馆”而失败?

../../src/liblzma/liblzma.la -lintl 
libtool: link: cannot find the library `/home/keith/staged/mingw32/lib/libiconv. 
la' or unhandled argument `/home/keith/staged/mingw32/lib/libiconv.la' 
make[2]: *** [xzdec.exe] Error 1 

我不知道谁是基思为什么它看起来那里的图书馆。我试过设置CCFLAGS CXXFLAGS和LDFLAGS我和库文件夹/usr/local/lib

没有雪茄..任何想法,为什么发生这种情况,我如何解决它?

回答

4

这是MinGW gettext包中的一个已知问题。问题中的“基思”Keith Marshall解释了一下MinGW SourceForge网站上in a bug report的情况。

一个比较难看的解决方法是实际创建/home/keith/staged/mingw32文件夹,然后在/mingw添加符号链接必要的文件夹,即:

mkdir -p /home/keith/staged/mingw32 
cd $_ 
ln -s /mingw/bin bin 
ln -s /mingw/lib lib 

(请注意,如果/mingw没有在文件系统中存在,您可以加入这一行的/etc/fstab底部创建它。

C:/MinGW    /mingw 

假设,当然,你必须安装在C:\MinGW的MingW关闭终端窗口并重新运行msys.bat以使更改生效。)

然后,您需要download libiconv.la来自方便地准备文件的人,并将其复制到/home/keith/staged/mingw32/lib/

这是一个可怕的黑客,但它为我工作。

2

this bug report,有什么不对的最新gettext包(的gettext-0.18.3.2)。

我试过以下2种方法。看起来这两个工作都很好。

  • 删除坏文件

    PUSHD/MinGW的/ lib目录/ & & RM libasprintf.la libgettextlib.la libgettextpo.la libgettextsrc.la libintl.la & & POPD

    或者,你可以重命名他们。事实上,如果您使用文本编辑器打开它们,您将在这些* .la文件中看到/ home/keith/...。

  • 使用gettext-0.18.3.1包

    关闭MSYS并运行以下命令来使用旧版本:MinGW的-得到升级 “的gettext = 0.18.3.1-1 *”,与PATH = C:\ mingw \ bin;%PATH%,当然。

相关问题