指定ghc编译器的自定义临时目录

问题描述 投票:1回答:1

我正在运行Ubuntu 14.04 LTS的Web服务器上使用ghc。由于某些限制,我无法提供对/ tmp文件夹的写权限。

ghc编译器在删除/ tmp文件夹的权限后抛出此错误

/tmp/ghc12032_0: createDirectory: permission denied (Permission denied)

是否可以为ghc提供自定义的临时目录?我没有找到可以帮助您的编译器标志。每次调用ghc时,我都需要提供一个自定义目录。任何帮助,将不胜感激。

haskell ghc
1个回答
5
投票

怎么样?

https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/separate_compilation.html#redirecting-temporary-files

-tmpdir

如果由于/ tmp空间不足(或安装认为临时文件应该到的地方)而遇到麻烦,则可以使用-tmpdir选项指定备用目录。例如,-tmpdir。表示将临时文件放在当前工作目录中。

或者,使用您的TMPDIR环境变量。将其设置为应放置临时文件的目录的名称。 GCC和其他程序也将使用TMPDIR变量。

甚至更好的主意:在构建GHC时设置DEFAULT_TMPDIR生成变量,而不必再担心TMPDIR。 (请参阅构建文档)。

© www.soinside.com 2019 - 2024. All rights reserved.