Linker Errors For OpenGL / GLUT 'Hello World' Program.

Hello, I am trying to test do some OpenGL / GLUT programming in Haskell, but I had linker issues testing the 'Hello World' OpenGL Haskell program. I believe the linker issues were caused because the Haskell GLUT package couldn't find the GLUT C libraries that were installed with Debian packages. I have tested that my OpenGL install does work with 'glxgears'. Below I have included the output from building Hello.hs with the linker errors, my Cabal install of GLUT and OpenGL (which seemed to install fine and the 'configure' stage of the package installs seem to find the OpenGL and GLUT C-libraries), and the Debian packages I have installed which provide the C-libraries for OpenGL and GLUT. Sorry for the long post, but I wanted to include all relevant information. Any help would be greatly appreciated. :) Thank you. __ Donnie ### Hello.hs ### import Graphics.Rendering.OpenGL import Graphics.UI.GLUT main = do (progname, _) <- getArgsAndInitialize createWindow "Hello World" mainLoop ########### ### Build of Haskell OpenGL / GLUT "Hello World" program, linking fails ### ghc --make Hello1.hs [1 of 1] Compiling Main ( Hello1.hs, Hello1.o ) Linking Hello1 ... /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Begin.o): In function `sAlI_info': (.text+0x1d3): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Begin.o): In function `sAxK_info': (.text+0x84f): undefined reference to `glutMainLoop' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Global.o): In function `szMM_info': (.text+0xd): undefined reference to `glutMenuStatusFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Global.o): In function `szNf_info': (.text+0x4d): undefined reference to `glutIdleFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Global.o): In function `szUK_info': (.text+0x6ac): undefined reference to `glutTimerFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `sshz_info': (.text+0x549): undefined reference to `glutEntryFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ssi2_info': (.text+0x589): undefined reference to `glutVisibilityFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ssiv_info': (.text+0x5c9): undefined reference to `glutPassiveMotionFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ssiY_info': (.text+0x609): undefined reference to `glutMotionFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ssjr_info': (.text+0x649): undefined reference to `glutReshapeFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ssjU_info': (.text+0x689): undefined reference to `glutOverlayDisplayFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `sskn_info': (.text+0x6c9): undefined reference to `glutDisplayFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stBW_info': (.text+0x4f95): undefined reference to `glutKeyboardFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stCp_info': (.text+0x4fd5): undefined reference to `glutKeyboardUpFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stGi_info': (.text+0x52e1): undefined reference to `glutSpecialFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stGL_info': (.text+0x5321): undefined reference to `glutSpecialUpFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stJk_info': (.text+0x5515): undefined reference to `glutMouseFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stQq_info': (.text+0x5a91): undefined reference to `glutSpaceballMotionFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stRv_info': (.text+0x5b31): undefined reference to `glutSpaceballRotateFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stTt_info': (.text+0x5cad): undefined reference to `glutSpaceballButtonFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stYd_info': (.text+0x6121): undefined reference to `glutButtonBoxFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `stZi_info': (.text+0x61c5): undefined reference to `glutDialsFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `su3u_info': (.text+0x6589): undefined reference to `glutTabletMotionFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `su6w_info': (.text+0x680d): undefined reference to `glutTabletButtonFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `sudL_info': (.text+0x6ea1): undefined reference to `glutJoystickFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ss3L_info': (.text+0xfca5): undefined reference to `glutGetModifiers' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ss4i_info': (.text+0xfda5): undefined reference to `glutGetModifiers' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ss4Q_info': (.text+0xfea5): undefined reference to `glutGetModifiers' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ss5o_info': (.text+0xffa5): undefined reference to `glutGetModifiers' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `ss5Y_info': (.text+0x100a5): undefined reference to `glutGetModifiers' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Colormap.o): In function `snyp_info': (.text+0x50): undefined reference to `glutSetColor' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Colormap.o): In function `snyr_info': (.text+0x1ac): undefined reference to `glutGetColor' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Colormap.o): In function `snyr_info': (.text+0x1d6): undefined reference to `glutGetColor' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Colormap.o): In function `snyr_info': (.text+0x200): undefined reference to `glutGetColor' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Colormap.o): In function `snwY_info': (.text+0x313): undefined reference to `glutLayerGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Colormap.o): In function `snwY_info': (.text+0x353): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Colormap.o): In function `snCI_info': (.text+0x41d): undefined reference to `glutCopyColormap' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(DeviceControl.o): In function `smEq_info': (.text+0x19): undefined reference to `glutIgnoreKeyRepeat' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(DeviceControl.o): In function `smEq_info': (.text+0x2f): undefined reference to `glutIgnoreKeyRepeat' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(DeviceControl.o): In function `smF1_info': (.text+0x7a): undefined reference to `glutSetKeyRepeat' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(DeviceControl.o): In function `smF1_info': (.text+0x93): undefined reference to `glutSetKeyRepeat' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(DeviceControl.o): In function `smF1_info': (.text+0xb1): undefined reference to `glutSetKeyRepeat' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(DeviceControl.o): In function `smzT_info': (.text+0x1fb): undefined reference to `glutDeviceGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(DeviceControl.o): In function `smA6_info': (.text+0x27b): undefined reference to `glutDeviceGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(DeviceControl.o): In function `smA6_info': (.text+0x479): undefined reference to `glutForceJoystickFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Fonts.o): In function `slEn_info': (.text+0x519): undefined reference to `glutStrokeCharacter' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Fonts.o): In function `slFU_info': (.text+0x609): undefined reference to `glutStrokeLength' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Fonts.o): In function `slIT_info': (.text+0x8fc): undefined reference to `glutBitmapCharacter' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Fonts.o): In function `slL0_info': (.text+0xa25): undefined reference to `glutBitmapLength' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o): In function `siGD_info': (.text+0x278): undefined reference to `glutGameModeGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o): In function `siGD_info': (.text+0x2bb): undefined reference to `glutGameModeGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o): In function `siGD_info': (.text+0x2e7): undefined reference to `glutGameModeGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o): In function `siGD_info': (.text+0x2f9): undefined reference to `glutGameModeGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o): In function `siGD_info': (.text+0x30b): undefined reference to `glutGameModeGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o):(.text+0x31d): more undefined references to `glutGameModeGet' follow /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o): In function `siHQ_info': (.text+0x3ed): undefined reference to `glutEnterGameMode' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o): In function `siHQ_info': (.text+0x3fc): undefined reference to `glutGameModeGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o): In function `sjqd_info': (.text+0x13c5): undefined reference to `glutGameModeString' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(GameMode.o): In function `siNC_info': (.text+0x2131): undefined reference to `glutLeaveGameMode' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o):(.text+0x15): undefined reference to `glutInitWindowSize' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o):(.text+0x3d): undefined reference to `glutInitWindowPosition' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o): In function `sfcH_info': (.text+0x24f): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o): In function `sfdf_info': (.text+0x45b): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o): In function `sfdf_info': (.text+0x49b): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o): In function `sfdf_info': (.text+0x4ad): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o): In function `sfdf_info': (.text+0x50f): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o):(.text+0x521): more undefined references to `glutGet' follow /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o): In function `sfiu_info': (.text+0x2f40): undefined reference to `glutInitDisplayMode' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o): In function `sgtU_info': (.text+0x2fc1): undefined reference to `glutInitDisplayString' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Initialization.o): In function `sfwB_info': (.text+0x63e1): undefined reference to `glutInit' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `syIX_info': (.text+0xdf): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `ryuS_info': (.text+0x173): undefined reference to `glutRemoveMenuItem' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `syRu_info': (.text+0x6e1): undefined reference to `glutAddMenuEntry' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `syRj_info': (.text+0x7b9): undefined reference to `glutAddSubMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `syzf_info': (.text+0x83b): undefined reference to `glutRemoveMenuItem' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `syRh_info': (.text+0x951): undefined reference to `glutSetMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `syRf_info': (.text+0x9b2): undefined reference to `glutGetMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `syRQ_info': (.text+0xd7d): undefined reference to `glutDestroyMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `syRN_info': (.text+0xe49): undefined reference to `glutCreateMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `szk6_info': (.text+0x1a86): undefined reference to `glutAttachMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `szk6_info': (.text+0x1a9f): undefined reference to `glutAttachMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `szk6_info': (.text+0x1ab8): undefined reference to `glutAttachMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `szk6_info': (.text+0x1ad1): undefined reference to `glutAttachMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `szk6_info': (.text+0x1aea): undefined reference to `glutAttachMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `syHN_info': (.text+0x1d54): undefined reference to `glutDetachMenu' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Menu.o): In function `szjX_info': (.text+0x1e79): undefined reference to `glutGetWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `raiR_info': (.text+0xe39): undefined reference to `glutSolidDodecahedron' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `raiP_info': (.text+0xe55): undefined reference to `glutWireDodecahedron' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `raiN_info': (.text+0xe71): undefined reference to `glutWireIcosahedron' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `raiL_info': (.text+0xe8d): undefined reference to `glutSolidIcosahedron' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `raiJ_info': (.text+0xea9): undefined reference to `glutSolidOctahedron' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `raiH_info': (.text+0xec5): undefined reference to `glutWireOctahedron' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `raiF_info': (.text+0xee1): undefined reference to `glutWireTetrahedron' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `raiD_info': (.text+0xefd): undefined reference to `glutSolidTetrahedron' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdiu_info': (.text+0x5026): undefined reference to `glutSolidCube' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdir_info': (.text+0x50c6): undefined reference to `glutSolidSphere' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdim_info': (.text+0x51e7): undefined reference to `glutSolidCone' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdi9_info': (.text+0x54cf): undefined reference to `glutSolidTorus' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdi3_info': (.text+0x5622): undefined reference to `glutSolidTeapot' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdhV_info': (.text+0x58fe): undefined reference to `glutWireCube' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdhS_info': (.text+0x599e): undefined reference to `glutWireSphere' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdhN_info': (.text+0x5abf): undefined reference to `glutWireCone' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdhA_info': (.text+0x5da7): undefined reference to `glutWireTorus' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Objects.o): In function `sdhu_info': (.text+0x5efa): undefined reference to `glutWireTeapot' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8A7_info': (.text+0x61): undefined reference to `glutUseLayer' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8A7_info': (.text+0xcf): undefined reference to `glutUseLayer' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8ws_info': (.text+0x227): undefined reference to `glutLayerGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8D9_info': (.text+0x2ac): undefined reference to `glutPostWindowOverlayRedisplay' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8D8_info': (.text+0x326): undefined reference to `glutPostOverlayRedisplay' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8x0_info': (.text+0x3ff): undefined reference to `glutLayerGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8FF_info': (.text+0x482): undefined reference to `glutRemoveOverlay' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8FF_info': (.text+0x4e7): undefined reference to `glutEstablishOverlay' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8xt_info': (.text+0x5a7): undefined reference to `glutLayerGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8HX_info': (.text+0x62a): undefined reference to `glutHideOverlay' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Overlay.o): In function `s8HX_info': (.text+0x68f): undefined reference to `glutShowOverlay' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9EB_info': (.text+0x49): undefined reference to `glutDeviceGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9EB_info': (.text+0x8f): undefined reference to `glutDeviceGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9EB_info': (.text+0xa1): undefined reference to `glutDeviceGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9EB_info': (.text+0xb3): undefined reference to `glutDeviceGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9EB_info': (.text+0x12b): undefined reference to `glutDeviceGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o):(.text+0x16b): more undefined references to `glutDeviceGet' follow /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9EB_info': (.text+0x363): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9EB_info': (.text+0x3a3): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9L1_info': (.text+0xb93): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9yO_info': (.text+0xcbb): undefined reference to `glutDeviceGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9z1_info': (.text+0xd3b): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9ze_info': (.text+0xdbb): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9zr_info': (.text+0xe3b): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9zr_info': (.text+0xe7b): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9zr_info': (.text+0xe8d): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o):(.text+0xeef): more undefined references to `glutGet' follow /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(State.o): In function `s9CY_info': (.text+0x12b8): undefined reference to `glutLayerGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o):(.text+0x15): undefined reference to `glutWarpPointer' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o):(.text+0x3d): undefined reference to `glutReshapeWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o):(.text+0x65): undefined reference to `glutPositionWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o):(.text+0xc5): undefined reference to `glutCreateSubWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5kf_info': (.text+0x10a): undefined reference to `glutSetCursor' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5kf_info': (.text+0x123): undefined reference to `glutSetCursor' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5kf_info': (.text+0x13c): undefined reference to `glutSetCursor' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5kf_info': (.text+0x155): undefined reference to `glutSetCursor' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5kf_info': (.text+0x16e): undefined reference to `glutSetCursor' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o):(.text+0x187): more undefined references to `glutSetCursor' follow /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s56X_info': (.text+0x6eb): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s56X_info': (.text+0x72b): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s56X_info': (.text+0x73d): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s56X_info': (.text+0x79f): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s56X_info': (.text+0x7b1): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5p7_info': (.text+0x805): undefined reference to `glutSetWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s58d_info': (.text+0x8e5): undefined reference to `glutGetWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5qr_info': (.text+0x915): undefined reference to `glutPostWindowRedisplay' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5qq_info': (.text+0x93b): undefined reference to `glutPostRedisplay' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s59A_info': (.text+0xbc7): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s59A_info': (.text+0xc07): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5vb_info': (.text+0xc3f): undefined reference to `glutShowWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5vb_info': (.text+0xc4f): undefined reference to `glutIconifyWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5vb_info': (.text+0xc64): undefined reference to `glutHideWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5Lh_info': (.text+0x190d): undefined reference to `glutCreateWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5Mh_info': (.text+0x19a5): undefined reference to `glutDestroyWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5Mh_info': (.text+0x19e5): undefined reference to `glutSwapBuffers' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5Mh_info': (.text+0x1a01): undefined reference to `glutFullScreen' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5Mh_info': (.text+0x1a1d): undefined reference to `glutPushWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5Mh_info': (.text+0x1a39): undefined reference to `glutPopWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5NA_info': (.text+0x1a55): undefined reference to `glutSetWindowTitle' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Window.o): In function `s5Oy_info': (.text+0x1add): undefined reference to `glutSetIconTitle' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Registration.o): In function `s7aX_info': (.text+0x2dd): undefined reference to `glutGetWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Registration.o): In function `s7xG_info': (.text+0x7c3): undefined reference to `glutTimerFunc' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(Registration.o): In function `s7lI_info': (.text+0x1ec0): undefined reference to `glutGetWindow' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(QueryUtils.o): In function `s1cg_info': (.text+0x61): undefined reference to `glutDeviceGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(QueryUtils.o): In function `s1d7_info': (.text+0x121): undefined reference to `glutLayerGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(QueryUtils.o): In function `s1dY_info': (.text+0x1e1): undefined reference to `glutGet' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(HsGLUT.o): In function `hs_GLUT_marshalBitmapFont': HsGLUT.c:(.text+0x15): undefined reference to `glutBitmap8By13' HsGLUT.c:(.text+0x24): undefined reference to `glutBitmapHelvetica18' HsGLUT.c:(.text+0x2b): undefined reference to `glutBitmap9By15' HsGLUT.c:(.text+0x32): undefined reference to `glutBitmapTimesRoman10' HsGLUT.c:(.text+0x39): undefined reference to `glutBitmapTimesRoman24' HsGLUT.c:(.text+0x40): undefined reference to `glutBitmapHelvetica10' HsGLUT.c:(.text+0x47): undefined reference to `glutBitmapHelvetica12' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(HsGLUT.o): In function `hs_GLUT_marshalStrokeFont': HsGLUT.c:(.text+0x52): undefined reference to `glutStrokeRoman' HsGLUT.c:(.text+0x6b): undefined reference to `glutStrokeMonoRoman' /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2/libHSGLUT-2.1.1.2.a(HsGLUT.o): In function `hs_GLUT_getProcAddress': HsGLUT.c:(.text+0x85): undefined reference to `glutGetProcAddress' collect2: ld returned 1 exit status ### Build of Haskell OpenGL / GLUT "Hello World" program, linking fails ### ### ghc-pkg list ### ghc-pkg list /usr/lib/ghc-6.8.2/package.conf: Cabal-1.3.12, HTTP-3001.0.4, array-0.1.0.0, base-3.0.1.0, bytestring-0.9.0.1, containers-0.1.0.1, directory-1.0.0.0, filepath-1.1.0.0, {ghc-6.8.2}, haskell98-1.0.1.0, hpc-0.5.0.0, mtl-1.1.0.0, network-2.1.0.0, old-locale-1.0.0.0, old-time-1.0.0.0, packedstring-0.1.0.0, parsec-3.0.0, pretty-1.0.0.0, process-1.0.0.0, random-1.0.0.0, readline-1.0.1.0, rts-1.0, template-haskell-2.2.0.0, unix-2.3.0.0, zlib-0.4.0.4 /home/donnie/.ghc/i386-linux-6.8.2/package.conf: GLUT-2.1.1.2, OpenGL-2.2.1.1, bytestring-0.9.1.2, cgi-3001.1.5.2, cgi-3001.1.6.0, hpc-0.5.0.1, mtl-1.1.0.1, network-2.2.0.0, parsec-3.0.0, regex-base-0.93.1, regex-posix-0.93.1, regex-posix-0.93.2, xhtml-3000.1.0.0, xhtml-3000.2.0.0, xml-1.2.6, xml-1.3.1 ############# ### Cabal install of GLUT ### cabal install glut Resolving dependencies... Downloading OpenGL-2.2.1.1... Configuring OpenGL-2.2.1.1... checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for Windows environment... no checking how to run the C preprocessor... gcc -E checking for X... libraries , headers checking for gethostbyname... yes checking for connect... yes checking for remove... yes checking for shmat... yes checking for IceConnectionNumber in -lICE... yes checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu checking for atan... no checking for atan in -lm... yes checking for GL library... -lGL -lm checking for GLU library... -lGLU -lGL -lm checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking GL/gl.h usability... yes checking GL/gl.h presence... yes checking for GL/gl.h... yes checking OpenGL/gl.h usability... no checking OpenGL/gl.h presence... no checking for OpenGL/gl.h... no checking GL/glu.h usability... yes checking GL/glu.h presence... yes checking for GL/glu.h... yes checking OpenGL/glu.h usability... no checking OpenGL/glu.h presence... no checking for OpenGL/glu.h... no checking Haskell type for GLboolean... Word8 checking Haskell type for GLbyte... Int8 checking Haskell type for GLubyte... Word8 checking Haskell type for GLshort... Int16 checking Haskell type for GLushort... Word16 checking Haskell type for GLint... Int32 checking Haskell type for GLuint... Word32 checking Haskell type for GLsizei... Int32 checking Haskell type for GLenum... Word32 checking Haskell type for GLbitfield... Word32 checking Haskell type for GLfloat... Float checking Haskell type for GLclampf... Float checking Haskell type for GLdouble... Double checking Haskell type for GLclampd... Double checking Haskell type for GLchar... Int8 checking Haskell type for GLintptr... Int32 checking Haskell type for GLsizeiptr... Int32 configure: creating ./config.status config.status: creating config.mk config.status: creating OpenGL.buildinfo config.status: creating include/HsOpenGLConfig.h config.status: creating include/HsOpenGL.h config.status: include/HsOpenGL.h is unchanged Preprocessing library OpenGL-2.2.1.1... Building OpenGL-2.2.1.1... [ 1 of 84] Compiling Graphics.Rendering.OpenGL.GL.PeekPoke ( Graphics/Rendering/OpenGL/GL/PeekPoke.hs, dist/build/Graphics/Rendering/OpenGL/GL/PeekPoke.o ) [ 2 of 84] Compiling Graphics.Rendering.OpenGL.GL.IOState ( Graphics/Rendering/OpenGL/GL/IOState.hs, dist/build/Graphics/Rendering/OpenGL/GL/IOState.o ) [ 3 of 84] Compiling Graphics.Rendering.OpenGL.GL.GLboolean ( Graphics/Rendering/OpenGL/GL/GLboolean.hs, dist/build/Graphics/Rendering/OpenGL/GL/GLboolean.o ) [ 4 of 84] Compiling Graphics.Rendering.OpenGL.GL.Extensions ( Graphics/Rendering/OpenGL/GL/Extensions.hs, dist/build/Graphics/Rendering/OpenGL/GL/Extensions.o ) [ 5 of 84] Compiling Graphics.Rendering.OpenGL.GL.Exception ( Graphics/Rendering/OpenGL/GL/Exception.hs, dist/build/Graphics/Rendering/OpenGL/GL/Exception.o ) [ 6 of 84] Compiling Graphics.Rendering.OpenGL.GL.StateVar ( Graphics/Rendering/OpenGL/GL/StateVar.hs, dist/build/Graphics/Rendering/OpenGL/GL/StateVar.o ) [ 7 of 84] Compiling Graphics.Rendering.OpenGL.GL.FlushFinish ( Graphics/Rendering/OpenGL/GL/FlushFinish.hs, dist/build/Graphics/Rendering/OpenGL/GL/FlushFinish.o ) [ 8 of 84] Compiling Graphics.Rendering.OpenGL.GL.BasicTypes ( Graphics/Rendering/OpenGL/GL/BasicTypes.hs, dist/build/Graphics/Rendering/OpenGL/GL/BasicTypes.o ) [ 9 of 84] Compiling Graphics.Rendering.OpenGL.GL.SavingState ( Graphics/Rendering/OpenGL/GL/SavingState.hs, dist/build/Graphics/Rendering/OpenGL/GL/SavingState.o ) [10 of 84] Compiling Graphics.Rendering.OpenGL.GL.StringQueries ( Graphics/Rendering/OpenGL/GL/StringQueries.hs, dist/build/Graphics/Rendering/OpenGL/GL/StringQueries.o ) [11 of 84] Compiling Graphics.Rendering.OpenGL.GLU.Initialization ( Graphics/Rendering/OpenGL/GLU/Initialization.hs, dist/build/Graphics/Rendering/OpenGL/GLU/Initialization.o ) [12 of 84] Compiling Graphics.Rendering.OpenGL.GL.BlendingFactor ( Graphics/Rendering/OpenGL/GL/BlendingFactor.hs, dist/build/Graphics/Rendering/OpenGL/GL/BlendingFactor.o ) [13 of 84] Compiling Graphics.Rendering.OpenGL.GL.BufferMode ( Graphics/Rendering/OpenGL/GL/BufferMode.hs, dist/build/Graphics/Rendering/OpenGL/GL/BufferMode.o ) [14 of 84] Compiling Graphics.Rendering.OpenGL.GL.ComparisonFunction ( Graphics/Rendering/OpenGL/GL/ComparisonFunction.hs, dist/build/Graphics/Rendering/OpenGL/GL/ComparisonFunction.o ) [15 of 84] Compiling Graphics.Rendering.OpenGL.GL.DataType ( Graphics/Rendering/OpenGL/GL/DataType.hs, dist/build/Graphics/Rendering/OpenGL/GL/DataType.o ) [16 of 84] Compiling Graphics.Rendering.OpenGL.GL.EdgeFlag ( Graphics/Rendering/OpenGL/GL/EdgeFlag.hs, dist/build/Graphics/Rendering/OpenGL/GL/EdgeFlag.o ) [17 of 84] Compiling Graphics.Rendering.OpenGL.GL.Face ( Graphics/Rendering/OpenGL/GL/Face.hs, dist/build/Graphics/Rendering/OpenGL/GL/Face.o ) [18 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelFormat ( Graphics/Rendering/OpenGL/GL/PixelFormat.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelFormat.o ) [19 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelData ( Graphics/Rendering/OpenGL/GL/PixelData.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelData.o ) [20 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.Reset ( Graphics/Rendering/OpenGL/GL/PixelRectangles/Reset.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/Reset.o ) [21 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.Sink ( Graphics/Rendering/OpenGL/GL/PixelRectangles/Sink.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/Sink.o ) [22 of 84] Compiling Graphics.Rendering.OpenGL.GL.PointParameter ( Graphics/Rendering/OpenGL/GL/PointParameter.hs, dist/build/Graphics/Rendering/OpenGL/GL/PointParameter.o ) [23 of 84] Compiling Graphics.Rendering.OpenGL.GL.PolygonMode ( Graphics/Rendering/OpenGL/GL/PolygonMode.hs, dist/build/Graphics/Rendering/OpenGL/GL/PolygonMode.o ) [24 of 84] Compiling Graphics.Rendering.OpenGL.GL.PrimitiveMode ( Graphics/Rendering/OpenGL/GL/PrimitiveMode.hs, dist/build/Graphics/Rendering/OpenGL/GL/PrimitiveMode.o ) [25 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.PixelInternalFormat ( Graphics/Rendering/OpenGL/GL/Texturing/PixelInternalFormat.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/PixelInternalFormat.o ) [26 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.TextureUnit ( Graphics/Rendering/OpenGL/GL/Texturing/TextureUnit.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/TextureUnit.o ) [27 of 84] Compiling Graphics.Rendering.OpenGL.GLU.ErrorsInternal ( Graphics/Rendering/OpenGL/GLU/ErrorsInternal.hs, dist/build/Graphics/Rendering/OpenGL/GLU/ErrorsInternal.o ) [28 of 84] Compiling Graphics.Rendering.OpenGL.GLU.Errors ( Graphics/Rendering/OpenGL/GLU/Errors.hs, dist/build/Graphics/Rendering/OpenGL/GLU/Errors.o ) [29 of 84] Compiling Graphics.Rendering.OpenGL.GL.QueryUtils ( Graphics/Rendering/OpenGL/GL/QueryUtils.hs, dist/build/Graphics/Rendering/OpenGL/GL/QueryUtils.o ) [30 of 84] Compiling Graphics.Rendering.OpenGL.GL.BeginEnd ( Graphics/Rendering/OpenGL/GL/BeginEnd.hs, dist/build/Graphics/Rendering/OpenGL/GL/BeginEnd.o ) [31 of 84] Compiling Graphics.Rendering.OpenGL.GL.Hints ( Graphics/Rendering/OpenGL/GL/Hints.hs, dist/build/Graphics/Rendering/OpenGL/GL/Hints.o ) [32 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.PixelStorage ( Graphics/Rendering/OpenGL/GL/PixelRectangles/PixelStorage.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/PixelStorage.o ) [33 of 84] Compiling Graphics.Rendering.OpenGL.GL.VertexSpec ( Graphics/Rendering/OpenGL/GL/VertexSpec.hs, dist/build/Graphics/Rendering/OpenGL/GL/VertexSpec.o ) [34 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.PixelMap ( Graphics/Rendering/OpenGL/GL/PixelRectangles/PixelMap.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/PixelMap.o ) [35 of 84] Compiling Graphics.Rendering.OpenGL.GL.Rectangles ( Graphics/Rendering/OpenGL/GL/Rectangles.hs, dist/build/Graphics/Rendering/OpenGL/GL/Rectangles.o ) [36 of 84] Compiling Graphics.Rendering.OpenGL.GLU.Tessellation ( Graphics/Rendering/OpenGL/GLU/Tessellation.hs, dist/build/Graphics/Rendering/OpenGL/GLU/Tessellation.o ) [37 of 84] Compiling Graphics.Rendering.OpenGL.GL.Capability ( Graphics/Rendering/OpenGL/GL/Capability.hs, dist/build/Graphics/Rendering/OpenGL/GL/Capability.o ) [38 of 84] Compiling Graphics.Rendering.OpenGL.GL.Colors ( Graphics/Rendering/OpenGL/GL/Colors.hs, dist/build/Graphics/Rendering/OpenGL/GL/Colors.o ) [39 of 84] Compiling Graphics.Rendering.OpenGL.GLU.Quadrics ( Graphics/Rendering/OpenGL/GLU/Quadrics.hs, dist/build/Graphics/Rendering/OpenGL/GLU/Quadrics.o ) [40 of 84] Compiling Graphics.Rendering.OpenGL.GL.ColorSum ( Graphics/Rendering/OpenGL/GL/ColorSum.hs, dist/build/Graphics/Rendering/OpenGL/GL/ColorSum.o ) [41 of 84] Compiling Graphics.Rendering.OpenGL.GL.CoordTrans ( Graphics/Rendering/OpenGL/GL/CoordTrans.hs, dist/build/Graphics/Rendering/OpenGL/GL/CoordTrans.o ) [42 of 84] Compiling Graphics.Rendering.OpenGL.GL.Bitmaps ( Graphics/Rendering/OpenGL/GL/Bitmaps.hs, dist/build/Graphics/Rendering/OpenGL/GL/Bitmaps.o ) [43 of 84] Compiling Graphics.Rendering.OpenGL.GL.Clipping ( Graphics/Rendering/OpenGL/GL/Clipping.hs, dist/build/Graphics/Rendering/OpenGL/GL/Clipping.o ) [44 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.Rasterization ( Graphics/Rendering/OpenGL/GL/PixelRectangles/Rasterization.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/Rasterization.o ) [45 of 84] Compiling Graphics.Rendering.OpenGL.GLU.Matrix ( Graphics/Rendering/OpenGL/GLU/Matrix.hs, dist/build/Graphics/Rendering/OpenGL/GLU/Matrix.o ) [46 of 84] Compiling Graphics.Rendering.OpenGL.GL.Fog ( Graphics/Rendering/OpenGL/GL/Fog.hs, dist/build/Graphics/Rendering/OpenGL/GL/Fog.o ) [47 of 84] Compiling Graphics.Rendering.OpenGL.GL.Framebuffer ( Graphics/Rendering/OpenGL/GL/Framebuffer.hs, dist/build/Graphics/Rendering/OpenGL/GL/Framebuffer.o ) [48 of 84] Compiling Graphics.Rendering.OpenGL.GL.LineSegments ( Graphics/Rendering/OpenGL/GL/LineSegments.hs, dist/build/Graphics/Rendering/OpenGL/GL/LineSegments.o ) [49 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.ColorTable ( Graphics/Rendering/OpenGL/GL/PixelRectangles/ColorTable.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/ColorTable.o ) [50 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.Convolution ( Graphics/Rendering/OpenGL/GL/PixelRectangles/Convolution.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/Convolution.o ) [51 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.Histogram ( Graphics/Rendering/OpenGL/GL/PixelRectangles/Histogram.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/Histogram.o ) [52 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.Minmax ( Graphics/Rendering/OpenGL/GL/PixelRectangles/Minmax.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/Minmax.o ) [53 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles.PixelTransfer ( Graphics/Rendering/OpenGL/GL/PixelRectangles/PixelTransfer.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles/PixelTransfer.o ) [54 of 84] Compiling Graphics.Rendering.OpenGL.GL.PixelRectangles ( Graphics/Rendering/OpenGL/GL/PixelRectangles.hs, dist/build/Graphics/Rendering/OpenGL/GL/PixelRectangles.o ) [55 of 84] Compiling Graphics.Rendering.OpenGL.GL.ReadCopyPixels ( Graphics/Rendering/OpenGL/GL/ReadCopyPixels.hs, dist/build/Graphics/Rendering/OpenGL/GL/ReadCopyPixels.o ) [56 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.TextureTarget ( Graphics/Rendering/OpenGL/GL/Texturing/TextureTarget.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/TextureTarget.o ) [57 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.Specification ( Graphics/Rendering/OpenGL/GL/Texturing/Specification.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/Specification.o ) [58 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.Queries ( Graphics/Rendering/OpenGL/GL/Texturing/Queries.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/Queries.o ) [59 of 84] Compiling Graphics.Rendering.OpenGL.GLU.Mipmapping ( Graphics/Rendering/OpenGL/GLU/Mipmapping.hs, dist/build/Graphics/Rendering/OpenGL/GLU/Mipmapping.o ) [60 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.TexParameter ( Graphics/Rendering/OpenGL/GL/Texturing/TexParameter.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/TexParameter.o ) [61 of 84] Compiling Graphics.Rendering.OpenGL.GL.Points ( Graphics/Rendering/OpenGL/GL/Points.hs, dist/build/Graphics/Rendering/OpenGL/GL/Points.o ) [62 of 84] Compiling Graphics.Rendering.OpenGL.GL.Polygons ( Graphics/Rendering/OpenGL/GL/Polygons.hs, dist/build/Graphics/Rendering/OpenGL/GL/Polygons.o ) [63 of 84] Compiling Graphics.Rendering.OpenGL.GL.RasterPos ( Graphics/Rendering/OpenGL/GL/RasterPos.hs, dist/build/Graphics/Rendering/OpenGL/GL/RasterPos.o ) [64 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.Application ( Graphics/Rendering/OpenGL/GL/Texturing/Application.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/Application.o ) [65 of 84] Compiling Graphics.Rendering.OpenGL.GL.VertexArrays ( Graphics/Rendering/OpenGL/GL/VertexArrays.hs, dist/build/Graphics/Rendering/OpenGL/GL/VertexArrays.o ) [66 of 84] Compiling Graphics.Rendering.OpenGL.GL.BufferObjects ( Graphics/Rendering/OpenGL/GL/BufferObjects.hs, dist/build/Graphics/Rendering/OpenGL/GL/BufferObjects.o ) [67 of 84] Compiling Graphics.Rendering.OpenGL.GL.PerFragment ( Graphics/Rendering/OpenGL/GL/PerFragment.hs, dist/build/Graphics/Rendering/OpenGL/GL/PerFragment.o ) [68 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.Parameters ( Graphics/Rendering/OpenGL/GL/Texturing/Parameters.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/Parameters.o ) [69 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.Environments ( Graphics/Rendering/OpenGL/GL/Texturing/Environments.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/Environments.o ) [70 of 84] Compiling Graphics.Rendering.OpenGL.GL.Shaders ( Graphics/Rendering/OpenGL/GL/Shaders.hs, dist/build/Graphics/Rendering/OpenGL/GL/Shaders.o ) [71 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing.Objects ( Graphics/Rendering/OpenGL/GL/Texturing/Objects.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing/Objects.o ) [72 of 84] Compiling Graphics.Rendering.OpenGL.GL.Texturing ( Graphics/Rendering/OpenGL/GL/Texturing.hs, dist/build/Graphics/Rendering/OpenGL/GL/Texturing.o ) [73 of 84] Compiling Graphics.Rendering.OpenGL.GL.DisplayLists ( Graphics/Rendering/OpenGL/GL/DisplayLists.hs, dist/build/Graphics/Rendering/OpenGL/GL/DisplayLists.o ) [74 of 84] Compiling Graphics.Rendering.OpenGL.GL.Domain ( Graphics/Rendering/OpenGL/GL/Domain.hs, dist/build/Graphics/Rendering/OpenGL/GL/Domain.o ) [75 of 84] Compiling Graphics.Rendering.OpenGL.GL.ControlPoint ( Graphics/Rendering/OpenGL/GL/ControlPoint.hs, dist/build/Graphics/Rendering/OpenGL/GL/ControlPoint.o ) [76 of 84] Compiling Graphics.Rendering.OpenGL.GL.Evaluators ( Graphics/Rendering/OpenGL/GL/Evaluators.hs, dist/build/Graphics/Rendering/OpenGL/GL/Evaluators.o ) [77 of 84] Compiling Graphics.Rendering.OpenGL.GLU.NURBS ( Graphics/Rendering/OpenGL/GLU/NURBS.hs, dist/build/Graphics/Rendering/OpenGL/GLU/NURBS.o ) [78 of 84] Compiling Graphics.Rendering.OpenGL.GLU ( Graphics/Rendering/OpenGL/GLU.hs, dist/build/Graphics/Rendering/OpenGL/GLU.o ) [79 of 84] Compiling Graphics.Rendering.OpenGL.GL.RenderMode ( Graphics/Rendering/OpenGL/GL/RenderMode.hs, dist/build/Graphics/Rendering/OpenGL/GL/RenderMode.o ) [80 of 84] Compiling Graphics.Rendering.OpenGL.GL.Selection ( Graphics/Rendering/OpenGL/GL/Selection.hs, dist/build/Graphics/Rendering/OpenGL/GL/Selection.o ) [81 of 84] Compiling Graphics.Rendering.OpenGL.GL.Feedback ( Graphics/Rendering/OpenGL/GL/Feedback.hs, dist/build/Graphics/Rendering/OpenGL/GL/Feedback.o ) [82 of 84] Compiling Graphics.Rendering.OpenGL.GL.Antialiasing ( Graphics/Rendering/OpenGL/GL/Antialiasing.hs, dist/build/Graphics/Rendering/OpenGL/GL/Antialiasing.o ) [83 of 84] Compiling Graphics.Rendering.OpenGL.GL ( Graphics/Rendering/OpenGL/GL.hs, dist/build/Graphics/Rendering/OpenGL/GL.o ) [84 of 84] Compiling Graphics.Rendering.OpenGL ( Graphics/Rendering/OpenGL.hs, dist/build/Graphics/Rendering/OpenGL.o ) /usr/bin/ar: creating dist/build/libHSOpenGL-2.2.1.1.a Installing: /home/donnie/.cabal/lib/OpenGL-2.2.1.1/ghc-6.8.2 Registering OpenGL-2.2.1.1... Reading package info from "dist/installed-pkg-config" ... done. Saving old package config file... done. Writing new package config file... done. Downloading GLUT-2.1.1.2... Configuring GLUT-2.1.1.2... checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for Windows environment... no checking how to run the C preprocessor... gcc -E checking for X... libraries , headers checking for gethostbyname... yes checking for connect... yes checking for remove... yes checking for shmat... yes checking for IceConnectionNumber in -lICE... yes checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu checking for atan... no checking for atan in -lm... yes checking for GL library... -lGL -lm checking for GLU library... -lGLU -lGL -lm checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking windows.h usability... no checking windows.h presence... no checking for windows.h... no checking GL/glut.h usability... yes checking GL/glut.h presence... yes checking for GL/glut.h... yes checking for GLUT library... no checking for GL/glut.h... (cached) yes checking GLUT/glut.h usability... yes checking GLUT/glut.h presence... yes checking for GLUT/glut.h... yes checking for windows.h... (cached) no configure: creating ./config.status config.status: creating config.mk config.status: creating GLUT.buildinfo config.status: creating include/HsGLUTConfig.h config.status: creating include/HsGLUT.h Preprocessing library GLUT-2.1.1.2... Building GLUT-2.1.1.2... [ 1 of 21] Compiling Graphics.UI.GLUT.Extensions ( Graphics/UI/GLUT/Extensions.hs, dist/build/Graphics/UI/GLUT/Extensions.o ) [ 2 of 21] Compiling Graphics.UI.GLUT.QueryUtils ( Graphics/UI/GLUT/QueryUtils.hs, dist/build/Graphics/UI/GLUT/QueryUtils.o ) [ 3 of 21] Compiling Graphics.UI.GLUT.Constants ( Graphics/UI/GLUT/Constants.hs, dist/build/Graphics/UI/GLUT/Constants.o ) [ 4 of 21] Compiling Graphics.UI.GLUT.Types ( Graphics/UI/GLUT/Types.hs, dist/build/Graphics/UI/GLUT/Types.o ) [ 5 of 21] Compiling Graphics.UI.GLUT.Window ( Graphics/UI/GLUT/Window.hs, dist/build/Graphics/UI/GLUT/Window.o ) [ 6 of 21] Compiling Graphics.UI.GLUT.Callbacks.Registration ( Graphics/UI/GLUT/Callbacks/Registration.hs, dist/build/Graphics/UI/GLUT/Callbacks/Registration.o ) [ 7 of 21] Compiling Graphics.UI.GLUT.Overlay ( Graphics/UI/GLUT/Overlay.hs, dist/build/Graphics/UI/GLUT/Overlay.o ) [ 8 of 21] Compiling Graphics.UI.GLUT.State ( Graphics/UI/GLUT/State.hs, dist/build/Graphics/UI/GLUT/State.o ) [ 9 of 21] Compiling Graphics.UI.GLUT.Objects ( Graphics/UI/GLUT/Objects.hs, dist/build/Graphics/UI/GLUT/Objects.o ) [10 of 21] Compiling Graphics.UI.GLUT.Initialization ( Graphics/UI/GLUT/Initialization.hs, dist/build/Graphics/UI/GLUT/Initialization.o ) [11 of 21] Compiling Graphics.UI.GLUT.GameMode ( Graphics/UI/GLUT/GameMode.hs, dist/build/Graphics/UI/GLUT/GameMode.o ) [12 of 21] Compiling Graphics.UI.GLUT.Fonts ( Graphics/UI/GLUT/Fonts.hs, dist/build/Graphics/UI/GLUT/Fonts.o ) [13 of 21] Compiling Graphics.UI.GLUT.DeviceControl ( Graphics/UI/GLUT/DeviceControl.hs, dist/build/Graphics/UI/GLUT/DeviceControl.o ) [14 of 21] Compiling Graphics.UI.GLUT.Debugging ( Graphics/UI/GLUT/Debugging.hs, dist/build/Graphics/UI/GLUT/Debugging.o ) [15 of 21] Compiling Graphics.UI.GLUT.Colormap ( Graphics/UI/GLUT/Colormap.hs, dist/build/Graphics/UI/GLUT/Colormap.o ) [16 of 21] Compiling Graphics.UI.GLUT.Callbacks.Window ( Graphics/UI/GLUT/Callbacks/Window.hs, dist/build/Graphics/UI/GLUT/Callbacks/Window.o ) [17 of 21] Compiling Graphics.UI.GLUT.Menu ( Graphics/UI/GLUT/Menu.hs, dist/build/Graphics/UI/GLUT/Menu.o ) [18 of 21] Compiling Graphics.UI.GLUT.Callbacks.Global ( Graphics/UI/GLUT/Callbacks/Global.hs, dist/build/Graphics/UI/GLUT/Callbacks/Global.o ) [19 of 21] Compiling Graphics.UI.GLUT.Callbacks ( Graphics/UI/GLUT/Callbacks.hs, dist/build/Graphics/UI/GLUT/Callbacks.o ) [20 of 21] Compiling Graphics.UI.GLUT.Begin ( Graphics/UI/GLUT/Begin.hs, dist/build/Graphics/UI/GLUT/Begin.o ) [21 of 21] Compiling Graphics.UI.GLUT ( Graphics/UI/GLUT.hs, dist/build/Graphics/UI/GLUT.o ) /usr/bin/ar: creating dist/build/libHSGLUT-2.1.1.2.a Installing: /home/donnie/.cabal/lib/GLUT-2.1.1.2/ghc-6.8.2 Registering GLUT-2.1.1.2... Reading package info from "dist/installed-pkg-config" ... done. Saving old package config file... done. Writing new package config file... done. #################### ### Installed Debian packages ### dpkg -l | grep OpenGL ii freeglut3 2.4.0-5 OpenGL Utility Toolkit ii freeglut3-dev 2.4.0-5 OpenGL Utility Toolkit development files ii libgl1-mesa-dev 7.0.3-5 A free implementation of the OpenGL API -- G ii libgl1-mesa-dri 7.0.3-5 A free implementation of the OpenGL API -- D ii libgl1-mesa-glx 7.0.3-5 A free implementation of the OpenGL API -- G ii libglu1-mesa 7.0.3-5 The OpenGL utility library (GLU) ii libglu1-mesa-dev 7.0.3-5 The OpenGL utility library -- development fi ii libglw1-mesa 7.0.3-5 A free implementation of the OpenGL API -- r ii libglw1-mesa-dev 7.0.3-5 A free implementation of the OpenGL API -- d ######################

On 2008 Sep 12, at 0:24, Donnie Jones wrote:
I am trying to test do some OpenGL / GLUT programming in Haskell, but I had linker issues testing the 'Hello World' OpenGL Haskell program. I believe the linker issues were caused because the Haskell GLUT package couldn't find the GLUT C libraries that were installed with Debian packages. I have tested that my OpenGL install does work with (...) checking for GLUT library... no
You need to check config.log from the Haskell GLUT build to see why it couldn't find (or possibly couldn't link with) the GLUT library. -- brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery@kf8nh.com system administrator [openafs,heimdal,too many hats] allbery@ece.cmu.edu electrical and computer engineering, carnegie mellon university KF8NH

Hello Brandon and Haskell-cafe, (Sorry for the delayed reply...) These seem to be the relevant lines from "configure" of OpenGL package. checking GL/gl.h usability... yes checking GL/gl.h presence... yes checking for GL/gl.h... yes checking OpenGL/gl.h usability... no checking OpenGL/gl.h presence... no checking for OpenGL/gl.h... no checking GL/glu.h usability... yes checking GL/glu.h presence... yes checking for GL/glu.h... yes checking OpenGL/glu.h usability... no checking OpenGL/glu.h presence... no checking for OpenGL/glu.h... no That looks like to me that the gl.h and glu.h header files were found and are usable (in some cases). I am able to build and install OpenGL and GLUT packages for Haskell, but many errors occur as seen below during linking. I still can't seem to figure out what is causing these linker errors... Any other ideas? :/ Thank you. __ Donnie On Fri, Sep 12, 2008 at 12:48 AM, Brandon S. Allbery KF8NH < allbery@ece.cmu.edu> wrote:
On 2008 Sep 12, at 0:24, Donnie Jones wrote:
I am trying to test do some OpenGL / GLUT programming in Haskell, but I had linker issues testing the 'Hello World' OpenGL Haskell program. I believe the linker issues were caused because the Haskell GLUT package couldn't find the GLUT C libraries that were installed with Debian packages. I have tested that my OpenGL install does work with
(...)
checking for GLUT library... no
You need to check config.log from the Haskell GLUT build to see why it couldn't find (or possibly couldn't link with) the GLUT library.
-- brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery@kf8nh.com system administrator [openafs,heimdal,too many hats] allbery@ece.cmu.edu electrical and computer engineering, carnegie mellon university KF8NH

On 2008 Sep 20, at 12:57, Donnie Jones wrote:
checking GL/gl.h usability... yes checking GL/gl.h presence... yes checking for GL/gl.h... yes checking OpenGL/gl.h usability... no checking OpenGL/gl.h presence... no checking for OpenGL/gl.h... no checking GL/glu.h usability... yes checking GL/glu.h presence... yes checking for GL/glu.h... yes checking OpenGL/glu.h usability... no checking OpenGL/glu.h presence... no checking for OpenGL/glu.h... no
That looks like to me that the gl.h and glu.h header files were found and are usable (in some cases). I am able to build
Yes, you have the header. But it says nothing about whether -lGLU was found, and that's where your problems are. Also, that's configure output, not config.log output (which has a transcript of the tests, not just the summary). -- brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery@kf8nh.com system administrator [openafs,heimdal,too many hats] allbery@ece.cmu.edu electrical and computer engineering, carnegie mellon university KF8NH

Hello Brandon, On Sat, Sep 20, 2008 at 1:02 PM, Brandon S. Allbery KF8NH < allbery@ece.cmu.edu> wrote:
On 2008 Sep 20, at 12:57, Donnie Jones wrote:
checking GL/gl.h usability... yes checking GL/gl.h presence... yes checking for GL/gl.h... yes checking OpenGL/gl.h usability... no checking OpenGL/gl.h presence... no checking for OpenGL/gl.h... no checking GL/glu.h usability... yes checking GL/glu.h presence... yes checking for GL/glu.h... yes checking OpenGL/glu.h usability... no checking OpenGL/glu.h presence... no checking for OpenGL/glu.h... no
That looks like to me that the gl.h and glu.h header files were found and are usable (in some cases). I am able to build
Yes, you have the header. But it says nothing about whether -lGLU was found, and that's where your problems are. Also, that's configure output, not config.log output (which has a transcript of the tests, not just the summary).
### Relevant lines that include "-lGL" or "-lGLU" in config.log ###
configure:4634: checking for GL library
configure:4670: gcc -o conftest -g -O2 conftest.c -lGL -lm >&5
configure:4676: $? = 0
configure:4696: result: -lGL -lm
configure:4773: checking for GLU library
configure:4809: gcc -o conftest -g -O2 conftest.c -lglu32 -lGL -lm >&5
/usr/bin/ld: cannot find -lglu32
collect2: ld returned 1 exit status
configure:4815: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME "Haskell OpenGL package"
| #define PACKAGE_TARNAME "OpenGL"
| #define PACKAGE_VERSION "2.2.1"
| #define PACKAGE_STRING "Haskell OpenGL package 2.2.1"
| #define PACKAGE_BUGREPORT "sven.panne@aedion.de"
| /* end confdefs.h. */
| #include

Hello Clifford,
Thank you for the quick reply.
I was able to get a test C program that draws a triangle with GLUT to work:
gcc -lglut triangle.o -o triangle.exe
However, when building the Haskell GLUT 'Hello World' it uses, -lGLU to link
GLUT, but that does not work; however, from the config.log output configure
seems to think that -lGL should work. Is there a way I can change the build
to use -lglut? Maybe with configure I can specify that -lglut is the
correct way to link the GLUT libraries?
Thank you!
__
Donnie
On Sat, Sep 20, 2008 at 3:42 PM, Clifford Beshers <
clifford.beshers@gmail.com> wrote:
It works for me. I'm running Ubuntu Hardy with some packages built by us at
SeeReason (see debs.seereason.com).
It looks like ghc can't find your glut libraries (not the Haskell wrappers,
but the real GLUT libs). Try 'ghc -v --make ' and look at the linking lines
and see what GHC is specifying (mine shows a -lglut). Try compiling an
example C program against GLUT and see if that works.
My package list looks like this:
beshers@blue:~/haskell$ dpkg -l \*glut\*
Desired=Unknown/Install/
Remove/Purge/Hold
| Status=Not/Installed/Config-f/Unpacked/Failed-cfg/Half-inst/t-aWait/T-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err:
uppercase=bad)
||/ Name Version Description
+++-==============-==============-============================================
un freeglut-dev <none> (no description available)
ii freeglut3 2.4.0-6 OpenGL Utility Toolkit
ii freeglut3-dev 2.4.0-6 OpenGL Utility Toolkit development files
un glut-doc <none> (no description available)
un glutg3 <none> (no description available)
un glutg3-dev <none> (no description available)
ii libghc6-glut-d 2.1.1.1-2+3see Haskell GLUT binding for GHC
un libghc6-glut-d <none> (no description available)
un libghc6-glut-p <none> (no description available)
un libglut <none> (no description available)
un libglut-dev <none> (no description available)
pn libglut3 <none> (no description available)
un libglut3-dev <none> (no description available)
On Sat, Sep 20, 2008 at 1:13 PM, Donnie Jones
Hello Brandon,
On Sat, Sep 20, 2008 at 1:02 PM, Brandon S. Allbery KF8NH < allbery@ece.cmu.edu> wrote:
On 2008 Sep 20, at 12:57, Donnie Jones wrote:
checking GL/gl.h usability... yes checking GL/gl.h presence... yes checking for GL/gl.h... yes checking OpenGL/gl.h usability... no checking OpenGL/gl.h presence... no checking for OpenGL/gl.h... no checking GL/glu.h usability... yes checking GL/glu.h presence... yes checking for GL/glu.h... yes checking OpenGL/glu.h usability... no checking OpenGL/glu.h presence... no checking for OpenGL/glu.h... no
That looks like to me that the gl.h and glu.h header files were found and are usable (in some cases). I am able to build
Yes, you have the header. But it says nothing about whether -lGLU was found, and that's where your problems are. Also, that's configure output, not config.log output (which has a transcript of the tests, not just the summary).
### Relevant lines that include "-lGL" or "-lGLU" in config.log ### configure:4634: checking for GL library configure:4670: gcc -o conftest -g -O2 conftest.c -lGL -lm >&5 configure:4676: $? = 0 configure:4696: result: -lGL -lm configure:4773: checking for GLU library configure:4809: gcc -o conftest -g -O2 conftest.c -lglu32 -lGL -lm >&5 /usr/bin/ld: cannot find -lglu32 collect2: ld returned 1 exit status configure:4815: $? = 1 configure: failed program was: | /* confdefs.h. */ | #define PACKAGE_NAME "Haskell OpenGL package" | #define PACKAGE_TARNAME "OpenGL" | #define PACKAGE_VERSION "2.2.1" | #define PACKAGE_STRING "Haskell OpenGL package 2.2.1" | #define PACKAGE_BUGREPORT "sven.panne@aedion.de" | /* end confdefs.h. */ | #include
| int | main () | { | gluNewQuadric() | ; | return 0; | } configure:4809: gcc -o conftest -g -O2 conftest.c -lGLU -lGL -lm >&5 configure:4815: $? = 0 configure:4835: result: -lGLU -lGL -lm ... fp_cv_check_GLU_lib='-lGLU -lGL -lm ' fp_cv_check_GL_lib='-lGL -lm ' ... GLU_LIBS=' -lGLU -lGL -lm ' ... GL_LIBS=' -lGL -lm ' ... #define GLU_LIBS "-lGLU" ,"-lGL" ,"-lm" ######################################## It seems like the OpenGL and GLUT libraries are found (after -lglu32 fails, I am using Debian Linux). I am not sure what to try now.
Thank you for the help. :) __ Donnie

On 2008 Sep 20, at 21:47, Donnie Jones wrote:
However, when building the Haskell GLUT 'Hello World' it uses, -lGLU to link GLUT, but that does not work; however, from the config.log output configure seems to think that -lGL should work. Is there a way I can change the build to use -lglut? Maybe with configure I can specify that -lglut is the correct way to link the GLUT libraries?
Actually config.log said -lGLU worked. If it's not present, maybe the simplest solution is to make a symlink. (It would only need to be present for compilation; ld will use the SONAME entry in the library to find the runtime name, so it'll correctly use libglut.so.) Fixing it at the level of the configure script is less than simple; you would need to modify configure.in and run autoreconf on it to produce a fixed configure (and you're in trouble if you have an older autotools than was used to create it originally). -- brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery@kf8nh.com system administrator [openafs,heimdal,too many hats] allbery@ece.cmu.edu electrical and computer engineering, carnegie mellon university KF8NH

On Saturday 20 September 2008 19:13:43 Donnie Jones wrote:
[...]
checking GL/gl.h usability... yes checking GL/gl.h presence... yes checking for GL/gl.h... yes checking OpenGL/gl.h usability... no checking OpenGL/gl.h presence... no checking for OpenGL/gl.h... no checking GL/glu.h usability... yes checking GL/glu.h presence... yes checking for GL/glu.h... yes checking OpenGL/glu.h usability... no checking OpenGL/glu.h presence... no checking for OpenGL/glu.h... no
That looks like to me that the gl.h and glu.h header files were found and are usable (in some cases). I am able to build
That's correct, but that's a transcript of configure in the OpenGL package, not the GLUT package. The OpenGL package contains the bindings for the GL and GLU libraries, the GLUT package contains the binding for the, well, GLUT library.
[...] ### Relevant lines that include "-lGL" or "-lGLU" in config.log ### [...]
This test is again OK, it first checks if we have to link against glu32 (for Windows) or GLU (for the rest of the world) to use GLU features. But again, this excerpt is from the config.log of the OpenGL package, not the GLUT package.
It seems like the OpenGL and GLUT libraries are found (after -lglu32 fails, I am using Debian Linux). I am not sure what to try now.
What you have posted so far indicates that the GL and GLU headers and libraries have been found, but for GLUT only the header has been found. Could you please post the relevant part of the config.log in the GLUT package, i.e. the part for "checking for GLUT library... no"? Where is the GLUT library on your system located? Does anybody else have a similar problem? Cheers, S.
participants (3)
-
Brandon S. Allbery KF8NH
-
Donnie Jones
-
Sven Panne