【问题标题】:How to change path of cabal config file?如何更改 cabal 配置文件的路径?
【发布时间】:2013-01-16 21:42:02
【问题描述】:

我在 Win7 上使用 HaskellPlatform-2012.4.0.0。它安装为便携式。路径通过 .bat 文件进行管理,因此 ghcighc 有效。
但是 cabal 将其安装在 C:\Users\name\AppData\Roaming\cabal\
为了规避我所做的:

cabal update
edit config file
delete all files except config

改变的路径:

remote-repo-cache: d:\h1\cabal\packages 
world-file: d:\h1\cabal\world
build-summary: d:\h1\cabal\logs\build.log

它可以工作,但远非真正便携。

Cabal 配置是更大的问题。似乎它必须留在 C:\Users\name\AppData\Roaming\cabal 中,这根本不可移植。
第一次运行cabal updateConfig file path source is default config file.

问题:
1. 默认配置文件在哪里?
2.remote-repo-cache、world-file等路径可以是相对的吗?
3. 有没有办法设置默认的 cabal 路径,所以它永远不会去 C:\Users\name\AppData\Roaming\cabal

【问题讨论】:

  • 貌似可以用CABAL_CONFIG env变量设置,见:github.com/haskell/cabal/commit/…
  • 令我惊讶的是SET CABAL_CONFIG=%~dp0cabal\bin\config 有效:) 重要的是要说 config 是文件名。配置文件中的路径仍然错误,但可以通过在 cabal 首次启动之前植入配置文件来修复。
  • 我不是 100% 确定,但似乎配置中的路径需要是绝对的。相对路径在您启动 cabal install xxx 的当前目录中创建 Haskell\cabal 文件夹:D 绝对路径 \Haskell\cabal 对于 cabal update 是可以的,但不适用于 cabal install xxx 只有纯绝对路径 D:\Haskell\cabal 有效。 p.s.将您的评论作为答案。它涵盖了问题 1 和 3。到目前为止,似乎对 q2 无能为力。
  • @Nathan Howell:现在任何时候都可以;)

标签: windows haskell path cabal haskell-platform


【解决方案1】:

使用以下命令运行 cabal:

cabal --config-file="path/to/config"

【讨论】:

  • 这给了cabal: no command given (try --help)cabal: unrecognized option '--config-file=d:\h1\cabal\bin\config'
  • 你cert.ainly需要提供一个命令:)你有什么版本的cabal-install?
  • cabal-install version 0.14.0 无法通过 cabal install cabal-install 进行更新。什么命令? cabal updatecabal install 与那个开关说cabal: unrecognized option '--config-file=d:\cfg'
  • @CoR 我有相同的版本,你必须把开关放在之前任何命令。喜欢cabal --config-file=... install ...
  • cabal --config-file="D:\HaskellStack\cabal\config" update
猜你喜欢
  • 2015-08-22
  • 2013-10-07
  • 2019-03-17
  • 2018-05-29
  • 2021-12-08
  • 1970-01-01
  • 2017-05-28
  • 2013-03-26
  • 1970-01-01
相关资源
最近更新 更多