Reputation: 476
I'm trying to install Fungen, but i get the following error messages. any suggestions ? (I'm working with the last Haskell Library on Windows 7, and I'm quite new to Haskell)
d:\temp>cabal install Fungen
Resolving dependencies...
Configuring Tensor-1.0.0.1...
Configuring OpenGL-2.8.0.0...
Building Tensor-1.0.0.1...
Building OpenGL-2.8.0.0...
Failed to install Tensor-1.0.0.1
Last 10 lines of the build log ( C:\Users\maurizio.ferreira\AppData\Roaming\cabal\logs\Tensor-1.0.0.1.log ):
`typeOf1' is not a (visible) method of class `Typeable1'
src\Data\Tensor.hs:316:28:
Not in scope: `mkTyCon'
Perhaps you meant `mkTyCon3' (imported from Data.Typeable)
src\Data\Tensor.hs:319:4:
`typeOf' is not a (visible) method of class `Typeable'
src\Data\Tensor.hs:319:13: Not in scope: `typeOfDefault'
Failed to install OpenGL-2.8.0.0
Last 10 lines of the build log ( C:\Users\maurizio.ferreira\AppData\Roaming\cabal\logs\OpenGL-2.8.0.0.log ):
Graphics.Rendering.OpenGL.Raw.EXT.BGRA (from OpenGLRaw-1.5.0.0)
Use -v to see a list of the files searched for.
Graphics\Rendering\OpenGL\GL\PixelFormat.hs:23:8:
Could not find module `Graphics.Rendering.OpenGL.Raw.EXT.Abgr'
Perhaps you meant
Graphics.Rendering.OpenGL.Raw.EXT.ABGR (from OpenGLRaw-1.5.0.0)
Graphics.Rendering.OpenGL.Raw.EXT.BGRA (from OpenGLRaw-1.5.0.0)
Graphics.Rendering.OpenGL.Raw.EXT (from OpenGLRaw-1.5.0.0)
Use -v to see a list of the files searched for.
Upvotes: 2
Views: 263
Reputation: 2298
As Ørjan Johansen said, 0.4.3 was broken (fixed in 2014/10 by 0.4.4). As of today, FunGEn 1.0.1 should install cleanly with stack or cabal.
Upvotes: 1
Reputation: 18189
No real solution from me, but at least an attempt to tell why this is harder than I can solve, and maybe not worth the bother unless you want a big challenge.
The FunGEn
package seems to require older versions of GLUT
and OpenGL
than those which are in the Haskell Platform.
On cabal
s first attempt, this draws in the Tensor
package, which is completely bitrotted and has no version which doesn't break with the modern non-user-definable Typeable
mechanism.
However even adding flags to fix that ("--constraint=Tensor>2.0"
, essentially telling it to use no existing version), doesn't change the fact that it's trying to recompile OpenGL
and GLUT
, which is a recipe for pain on Windows - packages like that are the main reason why only experts try to compile everything from source on Windows, and everyone else uses the prepackaged Haskell Platform those heroes made.
My final attempt was to add flags ("--constraint=OpenGL installed" "--constraint=GLUT installed"
) to force cabal to try using the already installed versions of them, which unfortunately didn't work - the FunGEn
package really does not seem to compile with those.
EDIT: OK, I suddenly noticed that the previous attempt didn't actually use the latest version of FunGEn
. So my very final attempt was to use cabal get FunGEt-0.4.3
, try to edit the cabal file and configure/build manually. At which point I became aware that the download was missing every file in the Graphics.UI.FunGen
directory. So the latest version of FunGEt
on Hackage is just broken, thank you very much.
Upvotes: 2