haskell - 在 GHCI 中创建 SDL2 窗口

标签 haskell sdl-2 ghci

我一直在使用these SDL2 绑定(bind)。虽然我可以执行编译后的程序,但无论我如何尝试,都无法从 GHCi 打开窗口。我已经尝试了存储库中的示例,但它们有同样的问题。我不断收到的错误消息是:

*** Exception: SDLCallFailed {sdlExceptionCaller = "SDL.Video.getWindowSurface", sdlFunction = "SDL_GetWindowSurface", sdlExceptionError = "Invalid window"}

如果有什么相关的话,我在 macOS 上。我也不一定与这个库结婚,如果有一种方法可以使用不同的库从 GHCi 创建窗口,我会很感兴趣。

最佳答案

我正在使用堆栈,这解决了我的问题:

stack ghci --ghci-options '-fno-ghci-sandbox'

我不太确定为什么会这样,但我有一种预感,这与 ghci 生成线程有关,并且 SDL2 想要在主线程中使用窗口。如果有人对这些事情有更好的理解,我非常感兴趣。

关于haskell - 在 GHCI 中创建 SDL2 窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61842338/

相关文章:

haskell - 如何将条件与堆栈一起使用

c++ - 将鼠标悬停在 SDL2 上时更改文本颜色

c++ - 启用 DEPTH_TEST 时 OpenGL 屏幕闪烁

haskell - GHCi 中的类型推断与手动签名

haskell - Curry编译器zinc无法配置

haskell - 有没有直接的方法将多个记录字段的 setter 组合到一个 setter ?

向量上的 Haskell 模式匹配

c++ - 如何在 SDL 2.0 中实时获取所有事件的 "list"?

haskell - 使用 GHC 编译 Haskell 时如何禁用 <<loop>> 异常?

haskell - 如何停止 GHCi 中的无限评估?