[Haskell-cafe] Bulding a library for C users on OS X

Simon Peyton-Jones simonpj at microsoft.com
Mon Nov 2 05:30:06 EST 2009


There is some stuff on using the FFI under "Collaborative documentation"  at http://haskell.org/haskellwiki/GHC.  The FFI link takes you to http://haskell.org/haskellwiki/GHC/Using_the_FFI

It's called "collaborative" because it's When you solve your problem, can I urge you to update that page (its a  wiki) to embody what you  have learned?

Simon

| -----Original Message-----
| From: haskell-cafe-bounces at haskell.org [mailto:haskell-cafe-bounces at haskell.org] On
| Behalf Of Chris Eidhof
| Sent: 02 November 2009 10:22
| To: Manuel M T Chakravarty
| Cc: Haskell Cafe
| Subject: Re: [Haskell-cafe] Bulding a library for C users on OS X
| 
| On 2 nov 2009, at 03:30, Manuel M T Chakravarty wrote:
| 
| > Chris Eidhof:
| >> I'm trying to call a Haskell function from C, on OS X. There's an
| >> excellent post [1] by Tomáš Janoušek that explains how to do this
| >> on Linux. However, on OS X, it's different. First of all, it looks
| >> like the -no-hs-main flag is ignored, because I get the following
| >> error:
| >>
| >> > ghc -O2 --make       -no-hs-main -optl '-shared' -optc '-
| >> DMODULE=Test'       -o Test.so Test.hs module_init.c
| >> > [1 of 1] Compiling Main             ( Test.hs, Test.o )
| >> >
| >> > Test.hs:1:0: The function `main' is not defined in module `Main'''
| >
| > The flag -no-hs-main is a link-time flag that allows you to link
| > without a main function, but you are getting a compile time error.
| > It's as if you try to export main, but don't define it.
| >
| > Have you had a look at
| http://www.haskell.org/ghc/docs/latest/html/users_guide/ffi-ghc.html#foreign-export-
| ghc
| >  ?
| 
| 
| Interesting! I didn't see that section before, thanks a lot.
| 
| -chris
| 
| _______________________________________________
| Haskell-Cafe mailing list
| Haskell-Cafe at haskell.org
| http://www.haskell.org/mailman/listinfo/haskell-cafe



More information about the Haskell-Cafe mailing list