好的,这应该很简单,但似乎无法解决这个问题。我有两个项目,ProjectA和ProjectB。 ProjectB依赖于旧项目ProjectA。现在我想构建ProjectB。我现在不想更改ProjectA的目录结构。问题是,我总是在ProjectA中使用-outputdir bin。
ProjectA看起来像这样:
ProjectA/
bin/
(*.o, *.hi in proper paths, sometimes also *.p_o and *.p_hi)
Foo/
ModuleX.hs
ModuleA.hs
ModuleB.hs
现在我有一个与ProjectB不同的文件夹,它有自己独立的-outputdir。我只需要链接到旧的项目对象文件(不重新编译ProjectA文件)。我意识到我可能会将ProjectA贬值......但是没有更简单的方法吗?
答案 0 :(得分:2)
“简单方法”是使用Cabal。一旦你安装了Project A,你就再也不用担心它实际存储在哪里了。 GHC会找到它。
如果您不想这样做,请尝试使用-i
切换到GHC,告诉您搜索已编译内容的文件夹。
http://www.haskell.org/ghc/docs/7.0.1/html/users_guide/separate-compilation.html