So here's the thing.... to get it to run on Mac OS X, I have to build a "SilkwormGame.app" directory, with a "Resources" directory inside, along with a lot of other rubbish, just so that GLFW can create a Mac OS window that accepts mouse and keyboard input. This is the purpose of the Makefile--it uses a script borrowed from wxWindows to assemble all the parts.

Obviously, this rigamarole is not necessary in Unix. But am I correct in assuming that there is no facility in Cabal that prepares a Mac OS "app" in this way? Any suggestions so that a cabal install will work for both Unix and Mac users?

Here is what I get (using Don's Silkworm.cabal):

~/Documents/Duane/BYU Semesters/2009-Winter/Graphics/ Silkworm(master) $ cabal install
Resolving dependencies...
Configuring Silkworm-0.2...
Preprocessing executables for Silkworm-0.2...
Building Silkworm-0.2...
[ 1 of 16] Compiling Silkworm.Action ( Silkworm/Action.hs, dist/ build/SilkwormGame/SilkwormGame-tmp/Silkworm/Action.o )
... <snip>...
[16 of 16] Compiling Main ( main.hs, dist/build/ SilkwormGame/SilkwormGame-tmp/Main.o )
Linking dist/build/SilkwormGame/SilkwormGame ...
Installing executable(s) in /Users/duane/.cabal/bin

~/Silkworm(master) $ SilkwormGame
Working in unbundled mode. You should build a .app wrapper for your Mac OS X applications. SilkwormGame: ~/Silkworm/background.png: openBinaryFile: does not exist (No such file or directory)

Putting the binary files in the place it expects produces the same "working in unbundled mode" along with a window that will not capture ANY input from the mouse or keyboard. In fact, it won't even rise to the top of the window stack--it remains behind the terminal window.

Thanks for you help,
-- Duane

On May 2, 2009, at 6:07 PM, Don Stewart wrote:

Yes, it is quite fun.

I think it should be using cabal's datadir from Paths_silkworm.hs to
install (and find) the resources.

Yell if you can't figure out how to do that. (xmonad has an example)

-- Don

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to