[Haskell-cafe] Embedding compiled Haskell Platform in custom application

2013-09-23 Thread blackbox.dev.ml
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?
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Embedding compiled Haskell Platform in custom application

2013-09-23 Thread Henk-Jan van Tuyl
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