On Mon, 23 Sep 2013 14:03:00 +0200, blackbox.dev.ml <blackbox.dev...@gmail.com> wrote:

Hi!
I'm writing a tool that generates haskell code, build it with cabal and
launch it. I want to deliver that tool to clients, but I don't want to
force them, to install system wide any specific ghc or cabal version. How
can I embed compiled ghc, cabal and selected libraries (for specific
platform) in installer of my application?

In most cases, it is sufficient to copy the generated executable; when dynamic libraries are used by the executable (like e.g. wxHaskell does), they must be copied as well, preferably to the same directory as the executable. Note that the dynamic libraries, when created from Haskell source, must be compiled with the same version of GHC as the executable.

When e.g. data files are needed and the application uses the function getDataDir from Cabal, an environment variable must be set to indicate where the data files are located. For instance, to install wxAsteroids on an other system, the environment variable wxAsteroids_datadir must be set; see the file wxAsteroids\dist\build\autogen\Paths_wxAsteroids.hs (this file is generated while building the package). An online example is http://darcsden.com/dbp/housetab-export/browse/hsx-0.7.0/dist/build/autogen/Paths_hsx.hs

Regards,
Henk-Jan van Tuyl


--
Folding@home
What if you could share your unused computer power to help find a cure? In just 5 minutes you can join the world's biggest networked computer and get us closer sooner. Watch the video.
http://folding.stanford.edu/


http://Van.Tuyl.eu/
http://members.chello.nl/hjgtuyl/tourdemonad.html
Haskell programming
--
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to