2016-02-13 28 views
0

我创建了a project in hackage,我想将其导入到我的代码中。Haskell如何从Hackage中获取代码到项目中? Cabal安装项目失败

而不是手动复制粘贴从“print-debugger-0.0.tar.gz”的代码到我的阴谋项目的src文件夹中,我希望能够做到这一点...

// project.cabal文件

name:    project 
... 
executable project 
    main-is:   Main.hs 
    hs-source-dirs: src 
    build-depends: base, split, print-debugger 

而做到这一点...

cabal install print-debugger 

和进口 “StackTraceDebug” 到我的项目。

当我尝试,我得到的消息......

"this package is not installed" 
"cabal: There is no package named 'print-debugger'" 

如何让我的代码了hackage,进入我的项目,而无需手动复制和粘贴?

+0

好吧,如果你只是*上传了这个包,你必须做'cabal update'才能看到它。在做'cabal update'之后,我可以看到你的软件包,但是它不会生成(由于缺少源文件)。也许你把东西放在错误的目录中? – user2407038

+0

@ user2407038 - 我做了“cabal update”。我认为我从Ubuntu 14.04软件仓库安装的build-essentials是完整的废话,我需要摆脱它并安装其他的东西。 –

+0

然后运行'cabal install print-debugger -v3'并查看它究竟发生了什么故障。 – user2407038

回答

-1

如果您在cabal有问题,您可能会考虑在将来尝试stack。这对协调项目之间的依赖关系非常有帮助。

+0

^你可以试试这个:https://hackage.haskell.org/package/print-debugger –

+0

我应该更清楚。 'stack'使用https://www.stackage.org。除非你的软件包已经上传到堆栈,否则你需要将它添加到使用它的项目的'stack.yaml'配置文件的'extra-deps'字段中。然后它将它从黑客中取而代之。 –