Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 如何解决由于路径长度限制而导致的Windows上的cabal沙盒构建错误?_Haskell_Cabal_Cabal Install_Gnu Toolchain - Fatal编程技术网

Haskell 如何解决由于路径长度限制而导致的Windows上的cabal沙盒构建错误?

Haskell 如何解决由于路径长度限制而导致的Windows上的cabal沙盒构建错误?,haskell,cabal,cabal-install,gnu-toolchain,Haskell,Cabal,Cabal Install,Gnu Toolchain,有一段时间,我对在阴谋集团沙箱中进行安装/构建常常在我的Windows机器上失败这一事实感到困惑。我最终发现,故障是由某些路径超出了MAX\u PATH限制(路径有效限制为255个字符)造成的 作为一个具体的例子,如果我试图cabal在cabal沙箱文件夹中安装data-default-instances-old-locale-0.0.1,它就会失败。在这个过程中的某个时刻,阴谋集团调用ar.exe,其路径类似于dist/dist-sandbox-72eb259b\build\libHSdata

有一段时间,我对在阴谋集团沙箱中进行安装/构建常常在我的Windows机器上失败这一事实感到困惑。我最终发现,故障是由某些路径超出了
MAX\u PATH
限制(路径有效限制为255个字符)造成的

作为一个具体的例子,如果我试图
cabal在cabal沙箱文件夹中安装data-default-instances-old-locale-0.0.1
,它就会失败。在这个过程中的某个时刻,阴谋集团调用
ar.exe
,其路径类似于
dist/dist-sandbox-72eb259b\build\libHSdata-default-instances-old-locale-0.0.1-6jcjjar25tk4x3nhhhhjfm.a-45644\libHSdata-default-instances-old-locale-0.0.1-6jcjcjar25tk4x3nhhhhjfm.a
。这是相对于temp目录下的一个工作文件夹(我已经简单地设置为
C:\temp
),因此,完整路径是
C:\Temp\data-default-instances-old-locale-0.0.1-18744\data-default-instances-old-locale-0.0.1\dist\dist-sandbox-72eb259b\build\libHSdata-default-instances-old-locale-0.0.1-6jcjjjar25tk4x3njhhhjfm.a-18744\libHSdata-default-instances-old-locale-0.0.1-6jcjar25tk3njhjhjhjfm.a

最终路径长度为272个字符,远远超过255个限制

在Windows上处理较长的路径是可能的,但这并不简单,而且在任何情况下,ar似乎都没有做任何必要的事情来处理它们(这并不奇怪,因为它只是GNU工具链的一个端口)


我感觉在可预见的将来情况会如此,但也许有人能想出解决办法?

这在最近发布的cabal install中得到了修复。升级应该可以解决问题。

看来您是正确的。我执行了
cabalinstall-cabalinstall
,此后我能够执行之前失败的命令。是否在某个地方记录了此修复?我很想知道它是如何修复的。你可以在这里看到血淋淋的细节:。请注意,最初的修复实际上导致了一个更糟糕的bug,cabal无法安装任何东西,请参阅: