将多个C对象文件加载到GHCi中

时间:2013-03-02 07:27:03

标签: haskell ghci

我有一个Haskell项目,其中包含我通过FFI访问的几十个C文件。我发现的所有文档都表明,为了在开发时使用GHCi,我必须在命令行上使用C对象文件调用它。对于单个对象:

ghci dist/build/csrc/foo.o

或所有人(因为他们都住在同一个文件夹中):

ghci dist/build/csrc/*.o

没有更方便的方法,例如使用.ghci

1 个答案:

答案 0 :(得分:2)

我不知道具体的ghc方式。写一个简短的shell脚本?

将此文件保存在与.cabal文件相同的目录中名为repl的文件中:

#!/bin/sh
ghci dist/build/csrc/*.o "$@"

通过运行

使其可执行
chmod a+x repl

然后你可以通过运行

加载所有C对象文件来启动ghci
./repl

(这些具体说明假设您使用的是Linux / BSD / Mac / Unix,但如果您使用的是Windows,则相同的原则也适用。)