将Haskell全新安装到Windows10机器上?
我刚开始使用 Haskell,真的很喜欢这门语言!正在寻找一些安装帮助。
我刚刚完成了 CIS194 和大部分优秀的 LYAH 书。我目前正在做这里推荐的 fp 课程:https : //github.com/bitemyapp/fp-course
我的问题是,到目前为止,我已经在 mac os 笔记本电脑上完成了我的工作,现在想在我的 Windows 桌面上安装 haskell,以便在我更大、更舒适的家庭设置上工作;但是我一直在努力寻找一种方法来进行“干净”的安装。haskell 平台不断推荐 choclatey,它似乎没有为我提供更改下载位置的选择。我的问题是我的操作系统驱动器使用了一个小型 SSD,并且有一个 2TB 的大型辅助驱动器,我希望在其中进行安装。
我的另一个困惑是有些人似乎强烈推荐堆栈安装而不是 haskell 平台安装;而其他人说没关系。我是一个初学者,所以我怀疑这对我很重要,但是在我安装它们之后,haskell 平台和 choclatey 非常令人沮丧,我不仅无法找到一种对初学者友好的方式来更改安装目录,完全删除包/haskell非常迟钝,很难找到资源。
我担心的是,随着时间的推移,这将占用我较小的系统驱动器上的大量空间,迫使我再次重新格式化。我不确定 Stack 安装在这方面是否会更好,但我希望安装能让我准确选择所有文件的去向。
许多帖子概述了一个应该随 haskell 平台一起提供的卸载程序,但它不适合我,也没有显示在我的添加或删除程序中,所以我不得不求助于简单的重新格式化,现在我正在寻求帮助,然后再跳回来(到希望避免再次这样做)。
总而言之,我是否可以帮助在非家用驱动器上进行安装,该驱动器很容易删除,并且清楚地知道所有 haskell 文件的确切位置,在 Windows 10 机器上?真的很感激这方面的任何帮助!
回答
GHC + cabal-install配置的主要空间占用者是 GHC 本身和 cabal-install 的“存储”,它缓存编译包的地方。
要完全控制安装目录:
-
在此处下载GHC的 Windows二进制分发版。解压缩文件夹(烦人的是,它是格式)并将生成的子文件夹放在您的环境变量中。
.tar.xz/binPATH -
在此处下载cabal-install的 Windows二进制文件。解压程序并将其位置文件夹放在您的环境变量中
PATH
使用以下命令创建初始 Cabal 配置文件:
cabal --config-file=here-put-your-desired-conf-path user-config init
创建一个环境变量,CABAL_CONFIG其值应为here-put-your-desired-conf-path.
(记住每次创建/修改环境变量时都要重新打开终端。如果使用“系统属性”对话框更改变量,当前打开的终端可能无法“获取”更改。)
编辑新创建的here-put-your-desired-conf-path配置文件,并编辑值的remote-repo-cache:,store-dir:,world-file:,extra-prog-path:,build-summary: ,installdir:和install-dirs user / prefix:领域,它们指向新的路径。基本上,更改指向您不想要的地方的任何内容。
编辑:实际上,有一种比CABAL_CONFIG手动编辑配置文件更好的方法。
还有另一个称为CABAL_DIR指向某个文件夹的环境变量,并在指定时将所有 cabal 文件放在该文件夹下。它还在那里搜索 cabal 配置文件。根据用户指南:
3.1.2.1. 配置文件发现
如果设置了 $CABAL_CONFIG 使用它,
否则,如果设置了 $CABAL_DIR,则使用 $CABAL_DIR/config
否则使用 getAppUserDirectory "cabal"
因此,在解压缩 cabal-install 并将其文件夹放入PATH, unset 之后CABAL_CONFIG,定义CABAL_DIR环境变量,并将其指向您想要使用的某个现有文件夹(并重新打开任何终端,以便他们看到更改)。
这应该足够了,不需要显式创建配置或修改它。所有 cabal 文件都将在CABAL_DIR.