From HaskellWiki
(Difference between revisions)
|
|
| 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.
| + | How does one interface with a C enum? |
| - | | + | |
| - | 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
| + | |
| - | [https://github.com/mcandre/charm]
| + | |
| - | | + | |
| - | hscharm
| + | |
| - | [https://github.com/mcandre/hscharm]
| + | |
| - | | + | |
| - | $ 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
| + | |
Current revision
How does one interface with a C enum?