Difference between revisions of "Talk:FFI complete examples"

From HaskellWiki
Jump to navigation Jump to search
(wiki syntax)
(FIXED IT!!!)
Line 1: Line 1:
  +
Update: The following problem is solved by renaming charm.hs to hscharm.hs, so that the corresponding charm.o doesn't override the charm.o produced during compilation of charm.c.
  +
 
ncurses is proving too difficult to setup, so I'm working on a new library called charm. The C code works by itself, but I can't compile a Haskell wrapper for it. While the tutorials at HaskellWiki are helpful, they're outdated. Argh! The docs say that -#include pragmas no longer work, but fail to explain how to load code without them. Suffice to say I have no recourse but trial and error.
 
ncurses is proving too difficult to setup, so I'm working on a new library called charm. The C code works by itself, but I can't compile a Haskell wrapper for it. While the tutorials at HaskellWiki are helpful, they're outdated. Argh! The docs say that -#include pragmas no longer work, but fail to explain how to load code without them. Suffice to say I have no recourse but trial and error.
   

Revision as of 06:55, 14 July 2011

Update: The following problem is solved by renaming charm.hs to hscharm.hs, so that the corresponding charm.o doesn't override the charm.o produced during compilation of charm.c.

ncurses is proving too difficult to setup, so I'm working on a new library called charm. The C code works by itself, but I can't compile a Haskell wrapper for it. While the tutorials at HaskellWiki are helpful, they're outdated. Argh! The docs say that -#include pragmas no longer work, but fail to explain how to load code without them. Suffice to say I have no recourse but trial and error.

charm [1]

hscharm [2]

$ make
cp /usr/include/charm.c .
ghc --make -fforce-recomp -o hellocharm hellocharm.hs charm.hs charm.c -I/usr/include -dylib-install-name /usr/lib/libcharm.dynlib
[1 of 2] Compiling Charm            ( charm.hs, charm.o )
[2 of 2] Compiling Main             ( hellocharm.hs, hellocharm.o )
Linking hellocharm ...
ld: duplicate symbol _Charm_getWidth_info in charm.o and charm.o
collect2: ld returned 1 exit status
make: *** [hellocharm] Error 1