【问题标题】:How to properly install Cabal 1.18.02 in Windows 7?如何在 Windows 7 中正确安装 Cabal 1.18.02?
【发布时间】:2014-02-04 14:34:42
【问题描述】:

我正在尝试在 Windows 7 中安装新的 Cabal。它成功安装了 1.18.02,但是当我运行“cabal --version”时,它显示的是 1.16。文件夹 C:\Users\me\AppData\Roaming\cabal\bin 位于我的 PATH 的前面。

当我直接运行 1.18 可执行文件时,我得到一堆“cabal.exe 不存在”的错误。

如何将 Cabal 配置为默认使用 1.18 版?

【问题讨论】:

  • 确切的错误是什么? 1.18 的可执行文件在哪里?
  • 问题是Windows在搜索可执行文件时总是优先考虑计算机的Path环境变量在用户帐户的Path环境变量之前。

标签: windows haskell cabal haskell-platform cabal-install


【解决方案1】:

由于haskell平台安装cabal.exe的方式存在路径冲突

As seen in this ticket

修复它:

Delete `C:/program files(x86)/Haskell platform/lib/extralibs/bin/cabal.exe.`

无论如何,您都可以使用搜索工具找到要删除的cabal.exe。

【讨论】:

    【解决方案2】:

    我使用 cabal-dev 将 cabal 1.18 安装到沙箱,这样 C:\cabal-dev\cabal-dev\bin 包含最新的 (1.18) cabal 可执行文件。然后我将 C:\Cabal-dev\cabal-dev\bin 设置为“系统变量”中“路径”变量中的第一个变量值(与“用户变量”中的“路径”变量相反)。这对我有用,并允许我保持旧版本的 cabal 完整,(以防以后需要)。

    它对我有用。祝你好运。以下是我的具体步骤:

    1. 安装 cabal-dev
      1. 在任何地方打开命令提示符
      2. 执行以下命令:“cabal install cabal-dev”
    2. 安装新的 cabal
      1. 创建目录:c:\cabal-dev,cd 到它
      2. 执行以下命令:“cabal-dev install cabal-install”
    3. 将新的、升级的阴谋集团路径设置为更高的优先级
      1. 关闭所有打开的命令提示符
      2. 运行:Sysdm.cpl
      3. 转到“高级”标签
      4. 点击“环境变量”
      5. 选择“系统变量”(下方)窗口中列出的“路径”变量
      6. 点击编辑
      7. 将以下字符串添加到变量值的开头: “C:\Cabal-dev\cabal-dev\bin;”
      8. 好的,好的,好的
      9. 确保正在运行最新的阴谋集团:
        1. 打开命令提示符(除 c:\cabal-dev\ * 之外的任何位置)
        2. 执行以下命令:“cabal –V”
        3. cabal 版本应该是 1.18.0.2

    【讨论】:

      【解决方案3】:

      此错误的另一个可能原因(除了另一个答案中描述的extralibs 中的阴谋集团问题)是您路径中的ld 无法读取GHC 生成的.o 文件。

      我在 GHC 7.8.1 RC1 中遇到了这个问题,通过运行 cabal install-v3 可以看到这个问题。我的路径上的“ld”来自 Haskell 平台 2013.2.0.0。

      mingw\bin 从新 GHC 的目录添加到路径修复了问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-08-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-07-31
        • 1970-01-01
        • 2016-05-02
        相关资源
        最近更新 更多