linux - 如何更改 Spack 存储 spack-stage 目录的位置?
问题描述
Spack 默认写入(在我的系统上)spack-stage
到/tmp/
. 在构建大的东西(例如 GCC 本身)时,这个目录可能会变满,至少在我正在使用的共享系统中:
fatal error: error writing to /tmp/ccPlIYSg.s: No space left on device
有没有办法告诉 Spack 使用不同的位置spack-stage
?
解决方案
根据spack 文档,您只需要指定$TMP
指向您选择的目录即可。
在某些(例如,HPC)系统上的临时目录中构建可以更快。指定
$tempdir
将确保使用默认临时目录(即,$TMP
或$TMPDIR
)。
防止冲突和潜在权限问题的另一个选项是指定~/.spack/stage
,它确保每个用户都在他们的主目录中构建。
推荐阅读
- c# - 向自定义正则表达式添加动态错误消息
- azure - 能否触发特定应用和用户的 Azure AD 令牌到期?
- linux - `gulp` 命令在 Linux 上无法正常工作
- excel-formula - 为什么我的 Average 和 AverageIF 公式不同?
- android - 如果对象状态发生变化,如何进行协程工作?
- javascript - 使用更改事件将多个输入保持在所需范围内
- sparql - Sparql two-nested-opt dawg 测试查询结果难以理解
- php - 如何getElementsByTagName,其中元素是body标签的子元素
- typescript - 打字稿通用方法
- javascript - 如何使用 Vue.js 实现这一点?