用下面的项目结构:生产从单个项目的多个可执行文件
src/FirstExecutable.hs
src/SecondExecutable.hs
my-amazing-project.cabal
和下面的小集团设置:
name: my-amazing-project
version: 0.1.0.0
build-type: Simple
cabal-version: >=1.8
executable first-executable
hs-source-dirs: src
main-is: FirstExecutable.hs
ghc-options: -O2 -threaded -with-rtsopts=-N
build-depends: base == 4.5.*
executable second-executable
hs-source-dirs: src
main-is: SecondExecutable.hs
ghc-options: -O2 -threaded -with-rtsopts=-N
build-depends: base == 4.5.*
运行cabal install
失败,并输出如下:
Installing executable(s) in
/Users/mojojojo/Library/Haskell/ghc-7.4.2/lib/my-amazing-project-0.1.0.0/bin
cabal: dist/build/second-executable/second-executable: does not exist
Failed to install my-amazing-project-0.1.0.0
cabal: Error: some packages failed to install:
my-amazing-project-0.1.0.0 failed during the final install step. The exception
was:
ExitFailure 1
我做错了什么,或者这是一个Cabal错误?是
所述可执行模块的内容如下:
module FirstExecutable where
main = putStrLn "Running FirstExecutable"
和
module SecondExecutable where
main = putStrLn "Running SecondExecutable"
它适用于我。 – Satvik
@Satvik我刚刚发现了解决方案。发布它 –
你不应该在可执行文件中使用'module ..'。或者你可以使用'模块主' – Satvik