问题标签 [haskell-stack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2049 浏览

haskell - 尽管有堆栈求解器,但找不到模块“Test.Hspec”

这是我stack.yaml声明hspec为额外依赖项的文件:

当我运行stack solver它说没有改变要做:

这是我的源文件(只是为了检查我是否可以将 Hspec 与堆栈一起使用):

当我跑步时,stack build我得到:

2015-10-05 22:24:08.450413: [警告] 找不到模块 `Test.Hspec' @(stack_Bp003b8iWaELtdr693pSPs:Stack.Build.Execute src/Stack/Build/Execute.hs:1241:35)

我认为stack solver是确保额外的依赖是好的。

我做错了什么?这是我第一次使用堆栈。

0 投票
1 回答
356 浏览

haskell - 如何在堆栈中使用“-ddump-minimal-imports”

我是 stack 的忠实粉丝,我已经从我的机器上完全删除了任何独立的 cabal 和 ghc 可执行文件(让 stack 在它自己神秘的 ~/.stack/ 目录中安装它需要的任何东西)......

但是,看起来某些标志在堆栈下无法正常工作。例如,我想使用-ddump-minimal-imports. 在阴谋集团中,这将是

显而易见的翻译是

这会运行,但只产生可执行文件(据我所知,至少......也许输出在神秘的 ~/.stack 目录中的某个地方)。

有没有办法做到这一点?

0 投票
1 回答
179 浏览

haskell - 如何避免使用堆栈进行不必要的重建?

Stack 通常会缓存包依赖构建以节省未来构建的时间,但我注意到在实践中很多情况下不会发生这种情况。当它工作时,它可以节省大量时间,因为构建依赖项通常需要半小时或更长时间。

经过一些工作,我已经能够隔离一个说明这个问题的简单示例,并且想知道是否有人可以帮助我解决它。请注意,此问题仅涉及新构建,例如克隆之后....同一克隆的第二个构建实际上确实很快。


如果我编译这个非常简单的 Main.hs

使用这个 stack.yaml

还有这个 .cabal 文件

每次我重新克隆源代码时,堆栈都会重建每个依赖项。

我猜这可能与extra-deps, 特别是text-1.1.1.4, 但不确定。

0 投票
1 回答
1610 浏览

haskell - 列出可用的堆栈构建计划

如何获取堆栈的可用构建计划列表?在我得到的一些系统上,我lts-3.7有一些其他的系统lts-3.1

0 投票
1 回答
123 浏览

haskell - 由于符号“hsprimitive_memcpy”的重复定义,Yesod 构建错误

我按照“Yesod 快速入门指南”在 Windows 10 中安装 Yesod。但是,当我发出stack build命令时,它失败了。

环境

  • 视窗 10(64 位)
  • stack-0.1.5(适用于 Windows10 64 位)
  • Haskell 平台 7.10.2-a(来自 HaskellPlatform-7.10.2-a-x86_64-setup.exe)

亚历克斯-3.1.4.log

0 投票
2 回答
277 浏览

haskell - 堆栈构建工具:与 LTS 解析器的兼容性问题

被宣传为 Haskell 工具的突破,我尝试从 Cabal 切换到 Stack。但是,我仍然无法让项目使用与 cabal 一起运行的堆栈来运行。我认为问题在于解析器设置的全局约束(例如堆栈中的长期支持包)不符合本地包依赖关系。

举个具体的例子,我在 0.14.0.6 版本中使用了 snap 框架 ( http://snapframework.com/ )。使用 . 创建完整的 snap 项目后snap init,我尝试使用stack init. 但是,堆栈没有找到满足约束的构建计划。另一方面,acabal install成功构建了项目。

我对堆栈的理解有误吗?如何解决这个问题?

完整的错误日志如下所示,项目名称为 SnapFull:

0 投票
1 回答
444 浏览

haskell - GHC 在 Yesod 安装中无法执行 gcc.exe

我按照“Yesod 快速入门指南”在 Windows 10 中安装 Yesod。但是,当我发出stack build命令时,它失败了。

环境

  • 视窗 10(64 位)
  • stack-0.1.5(适用于 Windows10 64 位)
  • 没有 Haskell 平台

我执行了这些命令

  1. stack new my-project yesod-sqlite && cd my-project
  2. 堆栈安装 yesod-bin cabal-install --install-ghc
  3. 堆栈设置
  4. 堆栈构建 <--- 发生错误

在“stack build”命令中,软件包安装已完成。但是,当它构建项目时,发生了错误。

命令提示符

0 投票
2 回答
1115 浏览

postgresql - 给定目录时堆栈找不到 libpq

我正在尝试建立一个使用该postgresql-simple包的堆栈项目。尝试安装时,安装stack build的所有依赖项都postgresql-simple没有问题,但堆栈自身安装时遇到问题postgresql-simple。我收到以下错误:

我也试过在我的stack.yaml文件中指定路径,同样的错误。

我尝试手动复制库并将文件从我的 postgres 安装包含到提到的...\mingw64\lib文件...\mingw64\include夹中。同样的错误。

我有文件libpq.dll并且libpq.lib在我的C:\PostgreSQL\8.4\lib文件夹中。

我觉得我错过了一些明显的东西,但我无法让它工作,我不确定我做错了什么。任何帮助表示赞赏。

更新

我忘了提到两个重要的细节。

首先,我已添加C:\PostgreSQL\8.4\bin到我的 PATH 中。据我所知,这可以按预期工作,因为我已经解决了一个关于pg_config丢失的错误,而是我目前遇到的错误。

其次,我还尝试将libandinclude目录添加到我的 PATH 中,但这并没有改变错误。

我还应该提到我的 Postgres 安装本身就可以正常工作。

0 投票
1 回答
554 浏览

haskell - setup-Simple-Cabal 在构建 haskell-src-exts-1.16.0.1 时无法安装

Stack 尝试安装(stack install在下载的ghc-mod-repo 目录中)haskell-src-exts-1.16.0.1,但是当它到达 setup-Simple-Cabal 时,出现以下错误:

setup-Simple-Cabal 是ghc-mod带有堆栈支持的安装的一部分(链接到 github)。mtl因为关于-package引发了一些错误:

我执行stack solver --modify-stack-yaml --resolver=ghc-7.8并首先解决了(哈哈)问题。haskell-src-exts >=1.17但是,显然,有些东西似乎需要。这个版本似乎根本不存在。运行ag "haskell-src-exts >=1.17"不返回任何结果。什么可以解决这个问题?

编辑:Sooo ...一切看起来都很奇怪。我曾经stack install安装过所有东西。haskell-srcexts在这个/happy问题之前它没有抱怨任何事情。但是,当我尝试时stack solver,会出现以下错误消息:

这个“全局约束”是什么?我会怀疑extra-deps中的部分格式不正确stack.yaml,但情况似乎并非如此。

EDIT2:stack.yaml:

0 投票
2 回答
397 浏览

haskell - 堆栈:如何在 `Setup.hs` 中使用多包依赖项?

我有一个stack多包项目,其中“多包”是zip-conduit-0.2.2.2(我需要调整一些依赖版本以使其编译nightly-2015-10-12)。

zip-conduit在主包中使用,我也希望Setup.hs能够打包 zip 文件。

我有build-type: Custom我的 cabal 文件并stack build尝试构建Setup.hs. 问题是构建Setup.hs找不到依赖项zip-conduit-0.2.2.2

我可以在中使用多包依赖项Setup.hs吗?如果有怎么办?如果没有,我的选择是什么?

注意:我看过这个参考https://github.com/commercialhaskell/stack/pull/899,但我不明白。