【问题标题】:How to create modulefile for linux Environment Modules?如何为 linux 环境模块创建模块文件?
【发布时间】:2019-10-31 11:29:20
【问题描述】:

如何在 centos7 上为任何软件(例如 python)创建模块文件?

模块文件的路径是/etc/modulefile

我有两个版本的 python(python2.7 和 python3.7)。

我在 modulefiles /etc/modulefiles/python 中为 python 创建一个目录,然后我应该为 paython 创建一个 modulefiles,如下代码:

#%Module 1.0
# python2.7 module file

conflict        python
prepend-path  PATH              ---
prepend-path  LD_LIBRARY_PATH   ----
prepend-path  MANPATH           ---
prepend-path  INFOPATH          ---

setenv        --_DIR            ---
setenv        --_BIN            ---
setenv        --_INC            ---
setenv        --_LIB            --- 

我的问题是如何获得prepend-pathsetenv 的正确变量

下面是whereis python命令的结果,我们可以从中提取prepend-pathsetenv的变量吗:

[root@mu modulefiles]# whereis python
python: /usr/bin/python /usr/bin/python2.7 /usr/bin/python2.7-config /usr/lib/python2.7 /usr/lib64/python2.7 /etc/python /usr/local/bin/python3.7m-config /usr/local/bin/python3.7m /usr/local/bin/python3.7 /usr/local/lib/python3.7 /usr/include/python2.7 /etc/modulefiles/python /usr/share/man/man1/python.1.gz

【问题讨论】:

    标签: linux tcl centos7 environment-modules modulefile


    【解决方案1】:

    PATH 变量是用于搜索二进制文件的环境变量。 您安装了两个不同版本的 Python,因此每个版本都应该有一个包含 python 可执行文件的不同目录(bin 可能还有extra/bin)。

    LD_LIBRARY_PATH 用于列出包含库的目录。大概是libextra/lib等。

    可以设置更多环境变量,具体取决于您尝试创建的模块。例如,gcc 模块可能会设置CC 环境变量。 Python 也可以有PYTHONPATH,Python 将在其中查找模块和包。

    MANPATH 环境变量用于查找man 页面,而INFOPATH 用于查找信息手册。

    您需要设置的变量完全取决于您实际要使用的内容。例如,只更新PATH 而永远不正确更新MANPATH 就足够了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-07
      • 2020-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多