由于gcc路径,Cabal无法在Mac OS X Lion上运行

时间:2012-02-22 01:36:14

标签: haskell gcc cabal

我刚刚完成了Mac OS X Lion的全新安装,并安装了Xcode 4.3& Haskell平台2011.4.0.0。

当我尝试通过Cabal安装软件包时,出现以下错误:

cabal install cabal-install
Resolving dependencies...
Configuring cabal-install-0.10.2...
ghc: could not execute: /Developer/usr/bin/gcc
cabal: Error: some packages failed to install:
cabal-install-0.10.2 failed during the configure step. The exception was:
ExitFailure 1

我发现Xcode 4.3不再安装在/ Developer中了。实际上,gcc可以在/ usr / bin中找到。

我尝试了cabal安装标志--with-gcc / usr / bin / gcc(和--with-gcc = / usr / bin / gcc)。它没有用。

我试图在/ Developer / usr / bin中创建一个gcc链接,但是gcc抱怨它找不到一些文件。

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:29)

我没有使用Lion,但是如果你做cat /usr/bin/ghc,你会发现ghc实际上是一个shell脚本,它定义了一个gcc要使用的变量。我认为明显的手术会起作用。在任何情况下,我的样子都是这样的,这不适合你:

#!/bin/sh
exedir="/Library/Frameworks/GHC.framework/Versions/7.0.4-i386/usr/lib/ghc-7.0.4"
exeprog="ghc-stage2"
executablename="$exedir/$exeprog"
datadir="/Library/Frameworks/GHC.framework/Versions/7.0.4-i386/usr/share"
bindir="/Library/Frameworks/GHC.framework/Versions/7.0.4-i386/usr/bin"
topdir="/Library/Frameworks/GHC.framework/Versions/7.0.4-i386/usr/lib/ghc-7.0.4"
pgmgcc="/Developer/usr/bin/gcc"
executablename="$exedir/ghc"
exec "$executablename" -B"$topdir" -pgmc "$pgmgcc" -pgma "$pgmgcc" -pgml "$pgmgcc" -pgmP "$pgmgcc -E -undef -traditional" -optl"-Wl,-read_only_relocs,suppress" ${1+"$@"}