如何将Haskell程序分发给非技术最终用户?

dan*_*dan 23 haskell

我刚开始学习Haskell所以如果这个问题有明显的答案,请原谅我.我有兴趣编写程序以分发给可能知道如何使用其终端应用程序但不一定如何在其系统上编程或安装Haskell和Haskell库的最终用户.

如何打包Haskell程序(例如命令行工具或更复杂的应用程序)并将其分发给这种用户群?

Vor*_*ato 10

ghc -o hello hello.hs
Run Code Online (Sandbox Code Playgroud)

将.hs编译为冻结的二进制文件,因此对于Windows,用户只需双击hello.exe,对于linux,它就是./hello.

  • 此外,编译版本是针对特定体系结构,还是通常可以在OS X和Linux上运行? (3认同)
  • 当你有多个文件时,当然还有`--make`. (2认同)
  • @FUZxxl - 所有GHC库和许多Hackage库都有BSD许可证,但绝不是全部.如果您要分发二进制文件,则需要遵守所有链接库的许可证. (2认同)

Tho*_*son 5

如果他们是 Windows 用户,则使用bamse包为您的应用程序构建安装程序。如果没有,请寻找特定于发行版的包装建议。也许其他人可以解释 OS X 包装。