如何将Haskell可执行文件编译或部署到Windows

Tur*_*ion 6 windows deployment haskell compilation cross-compiling

  • 我有一个简单的,自包含的,开源的Haskell应用程序,可以在Windows系统上编译cabal build.我们假设它使用一个或两个非平凡的C库,例如OpenGL.
  • 我在Linux上开发,无法访问Windows机器.

问题:如何将我的应用程序编译为.exeWindows用户可以下载和运行的简单文件,而不会有进一步的麻烦?

限制:

  • 没有付费的构建服务(例如AppVeyor)
  • 我没有使用非自由软件(特别是我不会安装Windows)
  • 没有在客户端安装Haskell开发环境
  • 如果可能,不在客户端安装第三方软件(例如附加库等)

一些可能的解决方

  • 交叉编译
  • 免费构建服务(例如travis-ci,但适用于Windows)