标签: cabal-install

如何使用堆栈安装包?

使用cabal,我可以使用命令安装hakyll:

cabal install hakyll
Run Code Online (Sandbox Code Playgroud)

如何使用堆栈执行相同的操作?

haskell package-management cabal cabal-install haskell-stack

47
推荐指数
3
解决办法
2万
查看次数

为什么cabal重新安装"总是危险的"?

使用Cabal重新安装软件包时,通常会看到此警告:

警告:请注意,重新安装始终是危险的.无论如何......

这条消息背后的原因是什么?

haskell cabal cabal-install

21
推荐指数
1
解决办法
1421
查看次数

Haskell cabal-install错误

我遇到了很多问题cabal-install:
1:每次我这样做cabal update,它都会告诉我这样做cabal install cabal-install,所以我这样做,然后当我cabal update再次这样做时,它会说同样的事情.

2:当我尝试ghc-mod从hackage 安装时,它给了我这个错误:

[username@arch ~]$ cabal install ghc-mod
In order, the following will be installed:
haskell-src-exts-1.14.0 (reinstall) changes: pretty-1.1.1.1 -> 1.1.1.0
hlint-1.8.55 (reinstall)
ghc-mod-3.1.4
setup: The program happy version >=1.17 is required but it could not be found.
ghc-mod-3.1.4 depends on haskell-src-exts-1.14.0 which failed to install.
haskell-src-exts-1.14.0 failed during the configure step.
hlint-1.8.55 depends on haskell-src-exts-1.14.0 which failed to install.
Run Code Online (Sandbox Code Playgroud)

所以问题是The program happy version …

haskell package cabal cabal-install

21
推荐指数
2
解决办法
5553
查看次数

cabal-install不保留版本为happy

我试图做,cabal install hoogle但有haskell-src-exts-1.13.5依赖的hickup :

Configuring haskell-src-exts-1.13.5...
setup: The program happy version >=1.17 is required but it could not be found.
Run Code Online (Sandbox Code Playgroud)

当我尝试这样做cabal install happy似乎成功完成,但cabal-install不保留版本:

>$ cabal list happy
* happy
    Synopsis: Happy is a parser generator for Haskell
    Default available version: 1.18.10
    Installed versions: [ Unknown ]
    Homepage: http://www.haskell.org/happy/
    License:  BSD3
Run Code Online (Sandbox Code Playgroud)

正如您所看到的那样,版本是[ Unknown ].它仍然未知,如果我再试cabal install happy一次,cabal-install仍然无视.

是什么赋予了?

提前致谢!

haskell cabal-install happy

19
推荐指数
1
解决办法
2633
查看次数

限制cabal安装使用的内存?

我的服务器托管限制了1GB内存.当我想编译一些大型程序时git-annex,Cabal吃了很多内存.有没有办法限制cabalgcl使用某些选项来限制内存使用?

我用一些细节更新了问题:我在Webfaction托管(CentOS 7 - 64bit)上运行cabal(1.22.4.0)和Ghc7.10.2,可以访问shell(非root访问).Webfaction admin/robot通常会因编译而容忍一些爆发.但Ghc/ Cabal需要太多内存并花费太多时间来进行某些包编译.因此系统会自动杀死所有进程.

我需要多次重新启动编译才能最终获得成功的结果.

我的主要目标是编译以成功结束,无论需要多长时间.

haskell ghc memory-consumption cabal cabal-install

17
推荐指数
1
解决办法
833
查看次数

Haskell Cabal:"包间接取决于同一包的多个版本"

清除所有cabal installed包后,我在以下会话中运行:

$ cabal update
Downloading the latest package list from hackage.haskell.org
james@bast:~/.cabal/packages$ cabal install cabal-dev
Resolving dependencies...
Downloading cabal-dev-0.9.1...
[1 of 1] Compiling Main             ( /tmp/cabal-dev-0.9.124882/cabal-dev-0.9.1/Setup.hs, /tmp/cabal-dev-0.9.124882/cabal-dev-0.9.1/dist/setup/Main.o )
Linking /tmp/cabal-dev-0.9.124882/cabal-dev-0.9.1/dist/setup/setup ...
Configuring cabal-dev-0.9.1...
Warning: This package indirectly depends on multiple versions of the same
package. This is highly likely to cause a compile failure.
package containers-0.4.2.1 requires array-0.4.0.0
package Cabal-1.14.0 requires array-0.4.0.0
package text-0.11.1.13 requires array-0.4.0.0
package deepseq-1.3.0.0 requires array-0.4.0.0
package containers-0.4.2.1 requires array-0.4.0.0
package HTTP-4000.2.2 requires …
Run Code Online (Sandbox Code Playgroud)

dependencies haskell package cabal cabal-install

16
推荐指数
1
解决办法
1564
查看次数

cabal-install配置文件的文档

~/.cabal/configcabal-install使用的商店配置.我想对它做一些hackery.(具体来说,安装了多个GHC版本,我希望有单独的文档索引).

但是,除了默认文件中包含的内容之外,我无法找到有关其语法或变量的任何文档.有没有可用的文件?

编辑:我已经说明了上面的目标,但是让我添加一些细节:如果在两个版本的GHC中安装了相同的软件包(例如GTK),它们最终会出现在同一个文档索引文件中.对于每个GHC安装,我不希望将本地文档索引分开.我相信在某种程度上可以使用文档目录设置,但是必须有一个当前使用的GHC版本的变量.如果没有,可能会有一些变通方法,但除非我看到文档,否则我无法说出来.

haskell cabal-install

15
推荐指数
1
解决办法
2271
查看次数

在交叉编译haskell代码时如何安装依赖项?

我已经成功创建了一个ghc交叉编译器,它允许我从我的x64 linux机器编译armv6h的haskell代码(在我的例子中是raspberry pi).我已成功在树莓上运行了一个hello world程序.

不,我想构建我真正的应用程序,它对其他haskell模块有很多依赖.当我为x64编译时,我就是这么做的

cabal install dependenciy1 depenency2 ...
Run Code Online (Sandbox Code Playgroud)

我知道我可以让我自己的程序成为一个cabal项目,自动完成这一步.但这不是重点.

当我尝试使用交叉编译器时

arm-unknown-linux-gnueabi-ghc --make myapp.hs
Run Code Online (Sandbox Code Playgroud)

它告诉我它找不到的模块.当然,他们没有安装!

我阅读https://ghc.haskell.org/trac/ghc/wiki/Building/CrossCompiling 并根据我尝试过

cabal --with-ghc=arm-unknown-linux-gnueabi-ghc --with-ghc-pkg=arm-unknown-linux-gnueabi-ghc-pkg --with-ld=arm-unknown-linux-gnueabi-ld install random
Run Code Online (Sandbox Code Playgroud)

随机是我正在尝试安装的依赖性.我收到以下错误:

Resolving dependencies...
Configuring random-1.0.1.3...
Failed to install random-1.0.1.3
Last 10 lines of the build log ( /home/daniel/.cabal/logs/random-1.0.1.3.log ):
/home/daniel/.cabal/setup-exe-cache/setup-Cabal-1.18.1.3-arm-linux-ghc-7.8.3.20140804: /home/daniel/.cabal/setup-exe-cache/setup-Cabal-1.18.1.3-arm-linux-ghc-7.8.3.20140804:      cannot execute binary file
cabal: Error: some packages failed to install:
random-1.0.1.3 failed during the configure step. The exception was:
ExitFailure 126
Run Code Online (Sandbox Code Playgroud)

当我做

file /home/daniel/.cabal/setup-exe-cache/setup-Cabal-1.18.1.3-arm-linux-ghc-7.8.3.20140804
Run Code Online (Sandbox Code Playgroud)

我明白了

/home/daniel/.cabal/setup-exe-cache/setup-Cabal-1.18.1.3-arm-linux-ghc-7.8.3.20140804: ELF 32-bit LSB executable, ARM, EABI5 version …
Run Code Online (Sandbox Code Playgroud)

haskell cross-compiling ghc cabal-install raspberry-pi

15
推荐指数
1
解决办法
1170
查看次数

cabal-install和Debian

所以,这是一个个人问题,但也许人们会有很好的建议或解决方法.

问题是在Debian下安装cabal-install和haskell-platform.

当你apt-get install haskell-platform,它随附cabal-install,它的命令cabal可用.

现在这cabal-install不是最新的:

> which cabal
/usr/bin/cabal
> /usr/bin/cabal --version
cabal-install version 0.8.0
using version 1.8.0.2 of the Cabal library
Run Code Online (Sandbox Code Playgroud)

但是,我对跑步的理解cabal update是它更新了cabal,但由于它不是"Debian thingy",它将它放入~/.cabal/bin/.

> ~/.cabal/bin/cabal --version
cabal-install version 0.8.2
using version 1.8.0.2 of the Cabal library
Run Code Online (Sandbox Code Playgroud)

现在我的系统有2个cabals,而我输入cabal的那个不是我想要使用的那个...因为它会不断更新另一个而不是自己,因此无效.

所以我做的是我把它别名~/.bashrc:

alias cabal='~/.cabal/bin/cabal'
Run Code Online (Sandbox Code Playgroud)

现在:

> cabal --version
cabal-install version 0.8.2
using version 1.8.0.2 of the Cabal library
Run Code Online (Sandbox Code Playgroud)

所以,我最后的问题:

  • 是否有一个deb存储库可以容纳cabal 0.8.2?
  • 我目前的解决方案能否导致问题?(例如,which cabal仍指向我的无用 …

debian haskell cabal haskell-platform cabal-install

13
推荐指数
2
解决办法
6633
查看次数

为什么Cabal没有成为一名完整的包裹经理?

(在我开始之前:我将使用Cabal for Everything,其名称中包含Cabal并与Haskell有关.)

有了通常的"你需要更新X来安装Y,但这会打破依赖性Z"问题,前几天,我想我只是问:为什么Cabal不是设计成一个完整的包管理器,特别是以下功能:

  • 版本控制:将软件包的多个版本并排安装,让软件包选择所需的依赖项.如果未指定包版本,请使用最新版本.
  • 更新软件包 - 或更好,安装最新版本.
  • 删除
  • 检查包装完整性

你会看到这个列表的去向.现在,对我来说,Cabal感觉就像一个有点复杂的构建系统(当你想第一次开始使用它时,试着找出你的软件包所需的Base版本),这是一个半生不熟的软件包安装程序.

所以问题再次出现:为什么Cabal没有制作全功能的构建/包装系统?我确信有一些设计决定导致当前状态.

(这个问题在某种程度上受到了对Reddit的咆哮的启发,但与那个人相反并不意味着冒犯任何人.):-)

haskell cabal cabal-install

13
推荐指数
1
解决办法
1639
查看次数