安装 Haskell 依赖项,例如 `pip -r requirements.pip`
Installing Haskell dependencies like `pip -r requirements.pip`
我是 Haskell 的新手,在使用 cabal
时遇到问题。
执行以下操作,
$ cabal sandbox init
$ cabal install parsec alex happy haddock mtl
其次是
$ cabal configure --enable-tests
Resolving dependencies...
Configuring Scheme-0.1.0.0...
cabal: At least the following dependencies are missing:
alex >=2.3, cabal >=1.22, haddock >=2.15, happy >=1.18
我正在使用
$ cabal --version
cabal-install version 1.22.8.0
using version 1.22.7.0 of the Cabal library
我删除了沙盒并创建了一个新的
$ cabal sandbox remove
$ cabal sandbox init
这样我就可以使用:
$ cabal install --dependencies-only
$ cabal configure --enable-tests
但是我遇到了同样的问题,就是两者都产生了同样的错误,即
Resolving dependencies...
Configuring Scheme-0.1.0.0...
cabal: At least the following dependencies are missing:
alex >=2.3,
cabal >=1.22,
doctest >=0.8,
haddock >=2.15,
happy >=1.18
这是我的 .cabal
文件,
name: Scheme
version: 0.1.0.0
license: MIT
license-file: LICENSE
category: Language
build-type: Simple
cabal-version: >=1.10
executable Scheme
main-is: Main.hs
ghc-options: -Wall
hs-source-dirs: src/
default-language: Haskell2010
build-depends: base >=4.6 && <4.9
, cabal >=1.22
, parsec >=3.1 && <3.2
, alex >=2.3
, happy >=1.18
, haddock >=2.15
, mtl >=2.2.1
test-suite doctests
default-language: Haskell2010
type: exitcode-stdio-1.0
ghc-options: -threaded
main-is: doctests.hs
build-depends: base >=4.6 && <4.9
, alex >=2.3
, happy >=1.18
, haddock >=2.13
, doctest >= 0.8
即使没有沙箱,我也会遇到同样的问题。
在 Python 和 pip
中,这只是使用 virtualenv
并执行 pip install -r requirements.pip
的问题,如果有这样一个指定依赖关系的文件的话。我想经历一个类似的过程,但是 cabal
.
我的方法有什么问题?
所以你的问题是
cabal: At least the following dependencies are missing:
alex >=2.3, cabal >=1.22, haddock >=2.15, happy >=1.18
这里缺少的部分是不是库而是程序。你有 运行 cabal install
,但是这会将它们安装到一个特殊的 cabal bin 文件夹中,通常在 ~/.cabal/bin
的 unix 下供用户安装。 (在 mac 和 windows 的不同位置)。
因此您需要确保 bin
目录在您的路径中, 或 您需要将这些可执行文件移动到 /usr/bin
或类似的已经在你的路上了。
我是 Haskell 的新手,在使用 cabal
时遇到问题。
执行以下操作,
$ cabal sandbox init
$ cabal install parsec alex happy haddock mtl
其次是
$ cabal configure --enable-tests
Resolving dependencies...
Configuring Scheme-0.1.0.0...
cabal: At least the following dependencies are missing:
alex >=2.3, cabal >=1.22, haddock >=2.15, happy >=1.18
我正在使用
$ cabal --version
cabal-install version 1.22.8.0
using version 1.22.7.0 of the Cabal library
我删除了沙盒并创建了一个新的
$ cabal sandbox remove
$ cabal sandbox init
这样我就可以使用:
$ cabal install --dependencies-only
$ cabal configure --enable-tests
但是我遇到了同样的问题,就是两者都产生了同样的错误,即
Resolving dependencies...
Configuring Scheme-0.1.0.0...
cabal: At least the following dependencies are missing:
alex >=2.3,
cabal >=1.22,
doctest >=0.8,
haddock >=2.15,
happy >=1.18
这是我的 .cabal
文件,
name: Scheme
version: 0.1.0.0
license: MIT
license-file: LICENSE
category: Language
build-type: Simple
cabal-version: >=1.10
executable Scheme
main-is: Main.hs
ghc-options: -Wall
hs-source-dirs: src/
default-language: Haskell2010
build-depends: base >=4.6 && <4.9
, cabal >=1.22
, parsec >=3.1 && <3.2
, alex >=2.3
, happy >=1.18
, haddock >=2.15
, mtl >=2.2.1
test-suite doctests
default-language: Haskell2010
type: exitcode-stdio-1.0
ghc-options: -threaded
main-is: doctests.hs
build-depends: base >=4.6 && <4.9
, alex >=2.3
, happy >=1.18
, haddock >=2.13
, doctest >= 0.8
即使没有沙箱,我也会遇到同样的问题。
在 Python 和 pip
中,这只是使用 virtualenv
并执行 pip install -r requirements.pip
的问题,如果有这样一个指定依赖关系的文件的话。我想经历一个类似的过程,但是 cabal
.
我的方法有什么问题?
所以你的问题是
cabal: At least the following dependencies are missing:
alex >=2.3, cabal >=1.22, haddock >=2.15, happy >=1.18
这里缺少的部分是不是库而是程序。你有 运行 cabal install
,但是这会将它们安装到一个特殊的 cabal bin 文件夹中,通常在 ~/.cabal/bin
的 unix 下供用户安装。 (在 mac 和 windows 的不同位置)。
因此您需要确保 bin
目录在您的路径中, 或 您需要将这些可执行文件移动到 /usr/bin
或类似的已经在你的路上了。