在使用神圣项目对我的haskell项目进行脚手架操作后,我发现了一些cabal故障.
我不认为这个问题与该插件有关(似乎更像是一般的阴谋问题),因为我可以从标准开始重现它cabal init.如果这个问题与SublimeHaskell有关,或者很多人似乎都在使用它,我会感到惊讶.
这是生成的cabal文件(我简化/缩短了一点):
(the holy-project生成一些示例源文件)
name: test-holy
version: 0.1.0.0
build-type: Simple
cabal-version: >=1.10
library
exposed-modules: TestHoly
, TestHoly.Swallow
, TestHoly.Coconut
build-depends: base >=4.7 && <4.8
ghc-options: -Wall
hs-source-dirs: src
default-language: Haskell2010
Run Code Online (Sandbox Code Playgroud)
cabal build 作品
以下命令不起作用:
$ cabal clean && cabal configure && cabal build --ghc-options="-fforce-recomp -Wall -fno-code"
cleaning...
Resolving dependencies...
Configuring test-non-holy2-0.1.0.0...
Building test-non-holy2-0.1.0.0...
Preprocessing library test-non-holy2-0.1.0.0...
[1 of 3] Compiling TestHoly.Coconut ( src/TestHoly/Coconut.hs, nothing )
[2 of 3] Compiling TestHoly.Swallow ( src/TestHoly/Swallow.hs, nothing )
[3 of 3] Compiling TestHoly ( src/TestHoly.hs, nothing )
[1 of 3] Compiling TestHoly.Coconut ( src/TestHoly/Coconut.hs, nothing )
[2 of 3] Compiling TestHoly.Swallow ( src/TestHoly/Swallow.hs, nothing )
[3 of 3] Compiling TestHoly ( src/TestHoly.hs, nothing )
ar: dist/build/TestHoly.o: No such file or directory
ar: dist/build/TestHoly/Swallow.o: No such file or directory
ar: dist/build/TestHoly/Coconut.o: No such file or directory
Run Code Online (Sandbox Code Playgroud)
根据我的理解,由于-fno-code标志(忽略代码生成)没有生成目标文件,因此链接器失败.这是预期的吗?或者链接器是否应该被调用?
我为什么要运行那个cabal命令?
正如我之前所说:我正在使用SublimeText来编辑我的项目.它在项目 - 神圣生成的cabal文件上失败,并显示以下消息:
Build FAILED
REMAINING STDERR:
Warning: the following files would be used as linker inputs, but linking is not being done: dist/build/TestHoly.dyn_o dist/build/TestHoly/Swallow.dyn_o dist/build/TestHoly/Coconut.dyn_o
ghc: no input files
Usage: For basic information, try the `--help' option.
Run Code Online (Sandbox Code Playgroud)
通过对SublimeHaskell#158的讨论,我按照nh2的建议直接运行这个cabal命令(因为它是SublimeHaskell使用的命令).
如果有人能够对此有所了解,我将不胜感激!
版本信息
$ cabal --version
cabal-install version 1.18.0.5
using version 1.18.1.4 of the Cabal library
$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 7.8.3
$ system_profiler SPSoftwareDataType
Software:
System Software Overview:
System Version: OS X 10.10 (14A389)
Kernel Version: Darwin 14.0.0
Run Code Online (Sandbox Code Playgroud)
这是阴谋集团中的一个已知问题。
请参阅https://github.com/haskell/cabal/issues/1176
如果没有通过,-fforce-recomp您可能可以进行增量检查,并且仅在需要进行干净构建时才会遇到错误。
但如果没有这一点,当 ghc 实际上没有编译东西时,cabal 就不知道该怎么办......
| 归档时间: |
|
| 查看次数: |
1316 次 |
| 最近记录: |