Я только что успешно установил Ubuntu, в основном для облегчения работы с библиотеками Haskell, чем в Windows.
Когда я запускаю какой-то код на Haskell, над которым я работал, он просто сбивает мои носки. Я использую библиотеки FunGen для своей игры, и я получил эту ошибку при попытке запустить ее.
freeglut (FunGen app): ERROR: Internal error <FBConfig with necessary capabilities nt found> in function fgOpenWindow
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 4 (X_DestroyWindow)
Resource id in failed request: 0x0
Serial number of failed request: 33
Current serial number in output stream: 36
После некоторого поиска в Интернете я нашел способ исправить это в коде C (используя GlutDouble
вместо GlDouble
), и я использую тип Graphics.Rendering.OpenGL.GLdouble
в своем коде на Haskell.
Еще несколько исследований показали мне, что тип GlDouble = Double, так что это не причина, кроме того, я просто снял часть gldouble в коде, и все же он не работает.
Итак, вот несколько простых кодов, которые приводят меня к предыдущей ошибке:
module Main where
import Graphics.UI.Fungen
width, height :: Int
width = 600
height = 400
w = fromIntegral width
h = fromIntegral height
main :: IO ()
main = do
let winConfig = ((200, 200), (width, height), "game");
gameMap = (textureMap 0 w h w h);
funInit winConfig gameMap [] () () [] gameCycle (Timer 30) []
gameCycle :: IOGame () () () () ()
gameCycle = do
showFPS TimesRoman24 (w-40,0) 1.0 0.0 0.0
о версиях, которые я получил: freeglut3 2.6.0-1ubuntu2, ghc 6.12.3, fungen 0.3, haskell glut 2.2.2.0 и ubuntu 11.04
Это случилось с кем-то еще?