CentOS下Fortran版本如何升级
导读:CentOS 下升级 Fortran 的可选方案 使用 SCL/DevToolSet(推荐,系统兼容性好,CentOS 7/8 均适用) 使用 Intel oneAPI HPC Toolkit(ifx/ifort,需许可证) 从 源码编译...
CentOS 下升级 Fortran 的可选方案
- 使用 SCL/DevToolSet(推荐,系统兼容性好,CentOS 7/8 均适用)
- 使用 Intel oneAPI HPC Toolkit(ifx/ifort,需许可证)
- 从 源码编译 GCC(获取最新版本,灵活但耗时)
- 使用 IBM XL Fortran(仅限特定平台与许可)
方案一 使用 SCL DevToolSet 升级 gfortran(推荐)
- 适用于 CentOS 7/8,不改变系统默认编译器,按需启用新工具链。
- 安装与启用步骤:
- 安装 SCL 源与工具
- CentOS 7:sudo yum install -y centos-release-scl
- CentOS 8:sudo dnf install -y centos-release-scl
- 安装所需版本的 DevToolSet(含 gfortran)
- 例如安装 devtoolset-9(提供 GCC 9.x 与 gfortran 9)
- sudo yum install -y devtoolset-9-gcc-gfortran
- 其他版本:devtoolset-7、devtoolset-10、devtoolset-11 等,按需求选择
- 例如安装 devtoolset-9(提供 GCC 9.x 与 gfortran 9)
- 启用新工具链(临时生效)
- scl enable devtoolset-9 bash
- 验证版本
- gcc --version
- gfortran --version
- 设为登录即启用(可选,永久生效)
- echo “source /opt/rh/devtoolset-9/enable” > > /etc/profile.d/devtoolset.sh
- source /etc/profile.d/devtoolset.sh
- 安装 SCL 源与工具
- 说明:启用后仅对当前会话或按上述脚本加载的会话生效,系统自带旧版 gcc/gfortran 保持不变,便于兼容既有项目。
方案二 使用 Intel oneAPI HPC Toolkit 安装 ifx/ifort
- 适用于需要 Intel 高性能 Fortran 编译器(ifx/ifort)的场景。
- 基本步骤:
- 从 Intel 官方下载并安装 Intel oneAPI HPC Toolkit(包含 ifx/ifort)
- 按安装向导完成配置,确保许可证有效
- 使用模块或设置环境变量加载工具链
- 验证:ifx --version 或 ifort --version
- 说明:该方案与 GCC 工具链并行,适合需要 Intel 优化与并行库(如 MKL、MPI)的 HPC 工作负载。
方案三 从源码编译安装 GCC(获取最新 gfortran)
- 适用于需要 特定版本 或 最新版本 的场景(如科研/新特性需求)。
- 基本步骤(以安装到 /usr/local/gcc-XX 为例):
- 安装依赖
- sudo yum groupinstall -y “Development Tools”
- sudo yum install -y gmp-devel mpfr-devel libmpc-devel
- 下载并解压 GCC 源码(示例:gcc-11.4.0.tar.gz)
- wget https://ftp.gnu.org/gnu/gcc/gcc-11.4.0/gcc-11.4.0.tar.gz
- tar xf gcc-11.4.0.tar.gz & & cd gcc-11.4.0
- 下载依赖项
- ./contrib/download_prerequisites
- 配置、编译与安装
- mkdir build & & cd build
- …/configure --enable-languages=c,c++,fortran --disable-multilib --prefix=/usr/local/gcc-11.4.0
- make -j$(nproc)
- sudo make install
- 配置环境(示例)
- echo ‘export PATH=/usr/local/gcc-11.4.0/bin:$PATH’ | sudo tee /etc/profile.d/gcc11.sh
- echo ‘export LD_LIBRARY_PATH=/usr/local/gcc-11.4.0/lib64:$LD_LIBRARY_PATH’ | sudo tee -a /etc/profile.d/gcc11.sh
- source /etc/profile.d/gcc11.sh
- 验证
- gcc --version
- gfortran --version
- 安装依赖
- 说明:源码编译耗时较长,但版本可控,适合对编译器版本有精确要求的用户。
方案四 使用 IBM XL Fortran(仅限特定平台与许可)
- 适用于 IBM Power(ppc64le) 等平台且持有 IBM XL Fortran 许可的场景。
- 升级要点(以 V15.1.6 为例):
- 安装许可证包:rpm -Uvh xlf-license.15.1.6-*.ppc64le.rpm
- 运行 xlf_configure 接受许可并重新配置编译器
- 说明:该流程针对 RHEL/CentOS/SLES 上的 XL Fortran,不适用于 x86_64 上的 GNU gfortran。
版本验证与注意事项
- 验证命令
- gfortran --version
- gcc --version
- 如使用 Intel/IBM 编译器,分别执行 ifx/ifort 或 xlf 的版本查询
- 注意事项
- 升级编译器可能影响依赖旧版 ABI/运行库的既有程序,建议先在测试环境验证,或使用容器/虚拟机隔离环境
- 使用 SCL 时,新工具链仅在启用后生效;如需全局默认,请配置 /etc/profile.d/*.sh 脚本
- 源码编译请合理设置安装前缀与库路径,避免与系统编译器冲突
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS下Fortran版本如何升级
本文地址: https://pptw.com/jishu/766107.html
