15

我正在尝试加载几个模块以在 Linux 上构建库,但被告知命令“模块”不存在。我搜索了一下,发现解决方案是获取一个名为“模块”的目录,尽管进行了大量搜索,但我无法找到该目录。

我不太确定我应该做什么,任何帮助将不胜感激(知道我正在使用的 makefile 使用 csh 而我的默认 shell 是 bash 可能会有所帮助)。谢谢!

4

4 回答 4

18

我试图复制它,结果证明对我来说是采购

source /etc/profile.d/modules.sh

在 th.sh脚本中帮助bash和类似。对于cshtcsh,您必须添加

source /etc/profile.d/modules.csh

到脚本。请注意,此行必须先出现,然后

module load foo

线。

于 2019-04-16T08:51:42.000 回答
3

我来到这里是因为我正在寻找在 CentOS7 中安装多个 php 版本的方法,而https://blog.remirepo.net/post/2019/05/22/PHP-7.4-as-Software-Collection是我的文章之一尝试关注并遇到相同的“模块:找不到命令”问题。

通过命令获取 /etc/profile:

. /etc/profile

似乎使“模块加载”工作。

在https://forums.fedoraforum.org/showthread.php?262708-module-command-not-found中感谢 fadishei

要使 php 的版本(例如 php7.4)保持不变,请将以下内容附加到文件中/etc/profile.d/custom.sh

source /etc/profile.d/modules.sh
module load php74

重新启动并运行php --version以交叉检查 php 7.4 是安装的当前版本。

于 2020-01-16T15:39:06.270 回答
1

I think that you have to put this in your script to define the module command:

module () {
    eval `/usr/bin/modulecmd bash $*`
}
于 2012-09-18T09:14:20.670 回答
0

这对我有用

#!/bin/bash -i // it will make this interactive
于 2020-12-24T10:03:58.843 回答