給定一個Haskell項目,是否有自動計算整個依賴項列表的方法?所有依賴的庫以及已包含但不是必需的庫。自動列出項目的依賴關係
9
A
回答
8
正如我在評論中所說的,cabal-install已經通過模塊查找(如GHCi)猜測包來做到這一點(我正在使用cabal-install 0.14.0)。它沒有任何真正的智慧w.r.t.版本,所以它只是將版本設置爲您安裝的主要版本。
下面你可以看到我製作一個虛擬包,導入Data.Vector
和cabal-install推斷我使用的是矢量0.9。*。
[[email protected] blah]$ pwd
/tmp/blah
[[email protected] blah]$ cat Data/Blah.hs
module Data.Blah where
import Data.Vector
[[email protected] blah]$ cabal init
Package name? [default: blah]
...SNIP...
What does the package build:
1) Library
2) Executable
Your choice? 1
Include documentation on what each field means (y/n)? [default: n]
Guessing dependencies... <--- SEE, SEE! YAY!
Generating LICENSE...
Warning: unknown license type, you must put a copy in LICENSE yourself.
Generating Setup.hs...
Generating blah.cabal...
You may want to edit the .cabal file and add a Description field.
[[email protected] blah]$ cat blah.cabal
-- Initial blah.cabal generated by cabal init. For further documentation,
-- see http://haskell.org/cabal/users-guide/
name: blah
version: 0.1.0.0
synopsis: Sisponys
-- description:
-- license:
license-file: LICENSE
author: Me
maintainer: [email protected]
-- copyright:
-- category:
build-type: Simple
cabal-version: >=1.8
library
exposed-modules: Data.Blah
-- other-modules:
build-depends: base ==4.5.*, vector ==0.9.* <-- SEE?? SEE! YIPPEE!!
+0
我正在使用'cabal-install version 0.10.2'。這是與Haskell平臺捆綁在一起的版本,所以我想這是最近的功能。 –
+0
@VladtheImpala我猜你需要最新的0.14.0版本。它包括各種'cabal init'改進。 –
相關問題
- 1. Scala項目可能列出自己的依賴關係嗎?
- 2. VS2010項目依賴關係
- 3. Eclipse項目依賴關係
- 4. Sbt項目依賴關係
- 5. Java項目依賴關係
- 6. CMAKE項目依賴關係
- 7. 指定項目的依賴關係:複製依賴關係?
- 8. 在Maven中自動下載依賴項的依賴關係
- 9. 從項目依賴中排除項目依賴關係
- 10. 如何列出Maven項目缺失的依賴關係
- 11. Maven多模塊項目中的自動裝配依賴關係
- 12. Hudson下游項目不列出上游依賴關係
- 13. 管理OSS項目的依賴關係
- 14. Maven項目變量的依賴關係
- 15. Visio中的項目依賴關係圖
- 16. SBT中的子項目依賴關係
- 17. Maven項目之間的依賴關係
- 18. 項目之間的Qt依賴關係
- 19. Maven,項目之間的依賴關係
- 20. Gradle項目中的Maven依賴關係
- 21. 發佈maven項目自動刪除SNAPSHOT依賴關係
- 22. NetBeans中的Maven項目:如何向「依賴關係」和「測試依賴關係」添加依賴關係?
- 23. 獲取缺少依賴關係的Maven項目的依賴關係
- 24. 依賴關係的nuget依賴關係
- 25. Maven依賴關係與多個項目的依賴關係管理
- 26. eclipse web項目依賴關係
- 27. GRAILS + Eclipse項目依賴關係
- 28. VS不承認項目依賴關係
- 29. 組織項目依賴關係
- 30. CMake Visual Studio項目依賴關係
Cabal確實在運行'cabal init'時試圖找出依賴關係。這是你想到的那種功能嗎? –
在什麼階段?我使用cabal init,並沒有找出任何依賴關係。 –
什麼階段?您已經編寫了一些代碼並準備好整理項目的階段(創建.cabal文件)。一個足夠新的cabal版本將讀取模塊並嘗試推斷依賴關係。 –