如何针对堆栈测试新的 ghc 构建

2024-02-10

我已经构建了 ghc-HEAD,我想尝试构建所有 stackage lts 或 nightly,看看它能做多少事情。

我所说的任何内容都无法说服 stack 使用我的新 ghc 构建任何东西。我尝试设置如下:

stack setup 8.1.20160209 --ghc-variant=aarch64-HEAD --ghc-bindist=https://s3-us-west-1.amazonaws.com/stack-aarch64/ghc-8.1.20160209-aarch64-unknown-linux.tar.xz

然后我下载 lts config.cabal 并将所有包复制到 my.cabal 文件中。这就是使用常规 ghc 构建所有内容所需的全部内容。我说

stack install --ghc-variant=aarch64-HEAD

它告诉我它不知道这些包在哪里。尝试堆栈求解器。所以我尝试了一下,但很长时间后它也放弃了。

接下来,我尝试制作自定义快照,再次将所有包放入 snapshot.yaml 中并将 stack.yaml 指向它。在 stack.yaml 中:

resolver:
  name: my-snapshot
  location: "./my-snapshot.yaml"
...

在 my-snapshot.yaml 中:

compiler: ghc-8.1.20160209

packages:
  - accelerate-0.15.1.0
  - ace-0.6
...

那也行不通。所以我尝试与 stack.yaml 协商

   skip-ghc-check: true
    compiler: ghc-8.1.20160209

    ghc-variant: aarch64-HEAD

    setup-info:
      ghc:
        aarch64-HEAD:
          8.1.20160209:
            url: "https://s3-us-west-1.amazonaws.com/stack-aarch64/ghc-8.1.20160209-aarch64-unknown-linux.tar.xz"

    install-ghc: true
    allow-newer: true

And now stack install says:

The following package identifiers were not found in your indices: bin-package-db-0.0.0.0

所以我尝试了一下,但很长时间后它也放弃了。

你所说的“放弃”是什么意思?输出是什么?

这也行不通

你说的“不起作用”是什么意思?输出是什么?

堆栈安装 --ghc-variant=aarch64-HEAD

你要安装什么堆栈?您需要指定一个解析器,在本例中是一个编译器版本 - 仅指定--ghc-variant是不足够的。你需要类似的东西stack install --allow-newer --ghc-variant=aarch64-HEAD --compiler ghc-8.1.20160209。不幸的是,目前这可能行不通,因为https://github.com/commercialhaskell/stack/issues/1579 https://github.com/commercialhaskell/stack/issues/1579

自定义快照是解决此问题的一种方法,但您需要列出所需的每个包的确切版本。

我不确定 bin-package-db 错误来自哪里,抱歉

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何针对堆栈测试新的 ghc 构建 的相关文章

  • 分叉的 IORef 读取器函数似乎会停止主线程

    我正在对并发性和内存可见性进行一些实验 并遇到了这种奇怪的行为 请参阅内联评论 module Main where import Data IORef import Control Concurrent import System CPUT
  • 是什么导致了这个“关闭句柄延迟读取”错误?

    我刚刚从最新的源安装了 GHC 现在我的程序给了我一条关于 关闭句柄延迟读取 的错误消息 这是什么意思 基本的惰性 I O 原语 hGetContents 产生一个String惰性地 它只根据需要从句柄中读取 以生成程序实际需要的字符串部分
  • 添加上下文来重写规则

    在下面的代码中 我想重写g f as h如果可能 可能有案例h还没有类的实例 但我想在可能的情况下进行重写 我收到一条错误消息 表明这是可以实现的 但我不确定我到底需要更改什么 这是一些示例代码 LANGUAGE TypeFamilies
  • 从 C++ 调用 Haskell

    我正在尝试从 C 调用 Haskell 我尝试使用this https github com jarrett cpphs解释 并且已经问了一个问题SO https stackoverflow com q 42976708 5324537 然
  • Hint.interpret 在用于 Polysemy.Sem 值时会给出编译器错误

    我正在尝试编译Polysemy https hackage haskell org package polysemy 1 2 3 0 docs Polysemy html运行时使用 Hint 语言 Haskell 解释器 https hac
  • 可存储空数据声明

    我正在尝试为 C 库创建 Haskell 包装器 底层结构太复杂 无法表达为显式类型 而且除了在 C 函数之间传递之外 我实际上并不使用它们 所以我使用EmptyDataDecls让 GHC 帮我解决这个问题 我需要的是一个指向这些数据类型
  • GHC生成的.hi、.p_hi和.dyn_hi文件有什么区别

    我正在尝试减少包含 Nix 派生的存档的大小 我注意到每个模块都有 3 个文件 hi p hi 和 dyn hi 大小都相似 ghc 提示 解释器只需要 hi 如果我删除其余变量 则什么也不会发生 那么 p hi 和 dyn hi 是沙袋吗
  • 对于没有字段的构造函数,reallyUnsafePtrEquality#

    据我了解 没有字段的类型的构造函数是 静态分配 的 并且 GHC在所有用途之间共享这些 https stackoverflow com a 3256825 176841 并且GC不会移动这些 https ghc haskell org tr
  • 我对 Haskell 的重击感到困惑

    The wikibook https en wikibooks org wiki Haskell Laziness说 在这个表达中 let z length 1 5 reverse olleh in z是一声重击 但是这个堆栈溢出 http
  • 为什么没有“国外进口原药不安全”?

    这是我之前问题的后续here https stackoverflow com questions 41213378 using foreign import prim with a c function using stg calling
  • MINGW64 上的堆栈测试输出乱码

    我在 Windows 10 上使用 Stack 运行 GHC 并在大部分日常工作流程中使用 Git Bash MINGW64 这包括使用 GHC 和 GHCi 它们通常工作得很好 然而 当我跑步时stack test从 MINGW64 开始
  • GHC - Mac OS X - ld:未知选项:-no_pie

    当我尝试在 Haskell 中编译一个简单的 Hello World 并使用ghc make Main hs I get 链接主 ld 未知选项 no pieCollect2 ld 返回 1 退出状态 我使用的是 Mac OS X 10 6
  • 从 Haskell 代码生成 LLVM IR

    我的目标是获取不同语言 主要是 C C Obj C 和 Haskell 的源代码 并提供有关它们的各种统计信息 例如变量 函数 内存分配 复杂性等的数量 LLVM 似乎是一个完美的工具 因为我可以为这些语言生成位码 并且通过 LLVM 的可
  • Haskell 堆栈与全局 ghc

    是否可以使用stack已经安装了ghc没有stack安装本地副本ghc or cabal 是的 如果ghc in PATH是所选快照的正确版本 stack会很高兴地使用它 ghc version The Glorious Glasgow H
  • 我的图书馆的变化使它变慢了很多。分析对我没有帮助。速度缓慢的原因可能是什么?

    我的问题 简述 我对我的库进行了更改 现在速度慢得多 但我无法弄清楚它在哪里花费了所有额外的时间 分析报告没有帮助 请帮我看看可能是什么原因 一些背景 我创建了一个 Redis 客户端库 名为Hedis http hackage haske
  • 具有更高种类类型的 GADT 类型推断

    我有一些可以编译的代码 LANGUAGE ScopedTypeVariables KindSignatures GADTs FlexibleContexts module Foo where data Foo gt where Foo c
  • Haskell GHC 动态编译仅适用于第一次编译

    按照发布的 GHC 教程here http www bluishcoder co nz 2008 11 dynamic compilation and loading of html并按照以下建议对此代码进行更改我之前问过的一个堆栈溢出问题
  • 如何让“ghci”使用我的“show”功能?

    假设您想使用自己的显示函数 例如 let show take 1000 Prelude show 你怎么可以允许ghci使用它来代替内置的打印show 您可以定义自己的交互式打印 https downloads haskell org gh
  • 在 ghci 中跟踪历史

    历史管理在 GHCI 或其他基于 Haskell 的 REPL 中如何工作 由于 Haskell 是一种纯语言 我猜它是使用 monad 实现的 也许是状态单子 http learnyouahaskell com for a few mon
  • 迭代打印列表中的每个整数

    假设我有一个整数列表l 1 2 我想打印到stdout Doing print l产生 1 2 假设我想打印不带大括号的列表 map print l产生 No instance for Show IO arising from a use

随机推荐