ld - Cabal 安装错误/usr/bin/ld : --hash-size=31: unknown option

标签 ld ghc cabal binutils gold-linker

尝试使用以下命令在我的计算机上安装任何软件包时

cabal install http-conduit

安装中止并出现以下错误:
/usr/bin/ld: --hash-size=31: unknown option

我该如何解决这个问题?

注意:这个问题故意不显示研究工作,因为它是立即以问答方式回答的。

最佳答案

binutils-gold 包和 GHC 7.4 会出现此问题。有一个旧的mailing list entry讨论这个问题。

例如,对于 LLVM,您可能需要 binutils-gold,但 GHC 7.4 无法正确处理 GOLD 链接器,因为它不理解 --hash-size选项。

如邮件列表中所述,解决方案是删除 binutils-gold,例如在 Ubuntu 上使用:

sudo apt-get remove binutils-gold

这将重新符号链接(symbolic link) /usr/bin/ld到非 GOLD 链接器版本。之后,重复 cabal install命令。

关于ld - Cabal 安装错误/usr/bin/ld : --hash-size=31: unknown option,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21345900/

相关文章:

macos - macOS 上的 NASM 间接寻址程序集不正确

c++ - "2 duplicate symbols for architecture"编译包Rcpp、RcppProgress时

c - 为什么链接的二进制文件包含使用过的目标文件的文件名,如何删除它们?

haskell - 如果库需要不同版本的 `base` 该怎么办?

haskell - ghc armv7 二进制 + cabal ?非法指令

gcc - 无法找到 crtn.o,在 64 位系统上链接 32 位代码

haskell - 在删除不透明的 FFI 对象之前,垃圾回收需要多长时间?有可能以某种方式加快速度吗?

parsing - haskell - 解析/读取 .pdf 文件的内容

haskell - 尝试 "cabal sandbox init"和 cabal 无法识别命令 "sandbox"

haskell - 类型签名需要库未导出的类型