2015-05-23 1 views
2

Я пытаюсь создать библиотеку Haskell, которая использует C FFI. У меня 4 файла:Как настроить Cabal для понимания C FFI?

MyLibrary.hs 
c_dependency.h 
c_dependency.c 
c_dependency.o 
test.hs 

Все в том же каталоге. test.hs нагрузки MyLibrary и тестирует его:

-- test.hs 
import qualified MyLibrary as Lib 
main = Lib.test 

Я хочу, чтобы иметь возможность компилировать test.hs как обычно, без привязки к c_dependency.o. То есть, я хочу, чтобы ghc test.hs; ./test работал. Как я могу инициализировать/настроить cabal, чтобы он правильно строит мою библиотеку, заботясь о ссылке c_dependency.o?

ответ

2

Ряд сообщений в блоге на Cabal, the FFI, and c2hs содержит то, что вы ищете во второй статье, раздел «Компиляция библиотеки с помощью Cabal».