首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么spack不将外部包添加到环境文件系统视图中?

为什么spack不将外部包添加到环境文件系统视图中?
EN

Stack Overflow用户
提问于 2021-08-06 09:51:38
回答 1查看 100关注 0票数 0

假设我在my_env

代码语言:javascript
复制
spack activate my_env

另外,假设我有外部包,例如系统安装的openmpi。然后生成文件系统视图:

代码语言:javascript
复制
spack env view regenerate

然后我收到警告:

代码语言:javascript
复制
Skipping external package: openmpi

实际上,openmpi的二进制文件没有被符号链接到我的文件系统视图中。我的问题是:这样做有什么特别的原因吗?有没有办法告诉spack,它也应该将外部包放在文件系统视图中?

请注意,与文件系统视图相反,在通过spack env loads生成模块时包含外部包。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-22 05:14:27

外部包被跳过,因为支持3种不同类型的视图:符号链接、硬链接和复制。

当spack复制二进制文件时,它试图使它们成为可重定位,但是对于系统/外部二进制文件,它是有点疯狂的西方。因此,跳过外部元素以保持行为的一致性,并防止spack在复制和硬链接视图中创建的潜在问题二进制文件。这种情况今后可能会改变。如果这是一个足够大的关注,那么请在github上提交一个问题。

正如您已经注意到的,loads加载系统二进制文件是自动的。这是因为loads文件只是加载模块,spack为环境中的每个包(包括外部包)创建了一个模块。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68679613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档