2012-02-13 63 views
0

我试图手动安装OpenGL-2.4.0.2软件包,但是在我从H​​ackage下载压缩包并解压缩后,当我运行Haskell:由于缺少依赖关系(已安装那里),无法安装OpenGL

sudo runhaskell Setup.hs configure 

我得到这些:

Configuring OpenGL-2.4.0.2... 
Setup.hs: At least the following dependencies are missing: 
GLURaw >=1.1.0.0, 
ObjectName -any, 
OpenGLRaw >=1.1.0.0, 
StateVar -any, 
Tensor -any 

但我检查,我已经安装了这些:

GLURaw 1.1.0.1 
ObjectName 1.0.0.0 
OpenGLRaw 1.1.0.2 
StateVar 1.0.0.0 
Tensor 1.0.0.1 

我试过重新安装这些,但无济于事。

我在Ubuntu 11.04下使用GHC 7.2.1,cabal-install 0.8.0和Cabal 1.8.0.2。

感谢您的任何建议!

+0

您正在配置为超级用户(为什么?)。您安装的“丢失”软件包实际上是全球安装还是仅在用户软件包配置中,因此不是从超级用户的角度安装的? – 2012-02-14 00:06:47

+0

@ ThomasM.DuBuisson:我尝试了sudo和没有,但都没有工作。感谢您的关注:) – 2012-02-14 00:08:02

+1

但你没有回答这个问题。 iirc(我安装了w/o cabal-install已经有一段时间了),默认是全局数据库。如果您有本地安装的软件包,那么您需要通过'--user'标志明确指定本地软件包库。 – 2012-02-14 00:12:02

回答

2

如果使用cabal-install(cabal命令行程序)安装了依赖项,它们将默认安装在用户软件包db中。但是当您使用runhaskell ./Setup.hs方式安装软件包时,默认情况下会进行全局安装,因此无法使用user-db中的软件包。尝试在用户数据库安装的软件包,

runhaskell ./Setup.hs configure --user 

或重新安装的依赖,在全球分贝,cabal install --global foo

+0

就是这样,它的工作。谢谢!你拯救我的一天! – 2012-02-14 00:13:00

+0

@ZiyaoWei:你也可以在那个目录下做“cabal configure”等,而不是直接使用“runhaskell Setup.hs”。 – ivanm 2012-02-14 01:00:05

+1

@ZiyaoWei,如果你不需要任何特殊的配置参数,甚至只是'cabal install'。 – 2012-02-14 01:05:12