gpt4 book ai didi

haskell - 在 NixOS 中,如何从命令行运行 Haskell 可执行文件?

转载 作者:行者123 更新时间:2023-12-04 05:28:06 25 4
gpt4 key购买 nike

我试图按照 this blog 的示例从命令行运行 Haskell 可执行文件.我的机器运行 NixOS。

该博客是关于将 markdown literate haskell 编译成 html 以发布博客文章。该过程的一个步骤是运行haskell 程序hscolour在 .lhs 文件上创建一个 .mkd 文件,其代码语法通过 html 和 css 突出显示。

cat blah.lhs | hscolour -lit -css > blah.mkd

但是,当我尝试运行此命令时,我得到以下信息 command not found错误。
$ cat blah.lhs | hscolour -lit -css > blah.mkd                                                            
hscolour: command not found

我不确定我遇到的这个问题是 NixOS 特有的,还是让 Haskell 可执行文件更广泛地适用于命令行。 如何制作 Haskell 可执行文件,例如 hscolour可以从命令行使用吗?

我曾尝试从 nix-shell 中运行此命令其中 hscolour已经建成。 hscolour命令仍然没有找到。
$ nix-shell -p "haskellPackages.ghcWithPackages (pkgs: with pkgs; [hscolour])"
$ cat functor-proofs.lhs | hscolour -li
hscolour: command not found

最佳答案

需要知道的两件事:

  • 你不需要 GHC,你只需要 hscolour 的可执行文件,你可以通过 haskell.lib.justStaticExecutables haskellPackages.hscolour 获得它。 .
  • hscolour 的二进制文件称为 HsColour ,不是 hscolour .

  • 展示:
    $ nix-shell -p 'haskell.lib.justStaticExecutables haskellPackages.hscolour' --run 'HsColour --version'
    HsColour 1.24

    关于haskell - 在 NixOS 中,如何从命令行运行 Haskell 可执行文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48313962/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com