一、前置准备:安装Fortran编译器 在CentOS上部署Fortran程序的第一步是安装Fortran编译器,最常用的是GNU Fortran(gfortran)。通过系统包管理器yum
即可快速安装:
sudo yum update # 更新系统软件包 sudo yum install gcc-gfortran # 安装gfortran编译器
安装完成后,通过gfortran --version
命令验证安装是否成功(显示版本号即为成功)。
二、处理依赖库(若有) 若Fortran程序依赖第三方库(如NetCDF、HDF5、MPICH等),需提前安装并配置环境变量。以NetCDF为例,安装步骤如下:
wget https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10.4/src/hdf5-1.10.4.tar.gz tar -zxvf hdf5-1.10.4.tar.gz cd hdf5-1.10.4
./configure --prefix=/usr/local/hdf5 make sudo make install
wget https://github.com/Unidata/netcdf-c/archive/refs/tags/v4.9.2.tar.gz tar -zxvf v4.9.2.tar.gz cd netcdf-c-4.9.2 ./configure --prefix=/usr/local/netcdf --disable-dap make sudo make install
~/.bashrc
文件末尾):export LD_LIBRARY_PATH=/usr/local/netcdf/lib:$LD_LIBRARY_PATH export CPPFLAGS=-I/usr/local/netcdf/include export LDFLAGS=-L/usr/local/netcdf/lib
执行source ~/.bashrc
使变量生效。三、编译Fortran程序
gfortran
编译单个源文件:gfortran -o my_program my_program.f90
其中-o my_program
指定输出可执行文件名,my_program.f90
为源文件。gfortran -o my_program main.f90 utils.f90 -L/usr/local/netcdf/lib -lnetcdf -lhdf5 -lz
-L
指定库文件路径,-l
指定库名(去掉lib
前缀和.so/.a
后缀)。-O2
(二级优化)提升性能,或-g
(生成调试信息)便于排查问题:gfortran -O2 -g -o my_program my_program.f90
四、运行程序 编译成功后,在终端执行以下命令运行程序:
./my_program
若程序需要读取配置文件或数据文件,需确保当前目录或指定路径下存在这些文件。
五、部署上线(打包与分发)
tar -czvf my_program.tar.gz my_program config/ data/
scp
命令将压缩包上传到目标CentOS服务器:scp my_program.tar.gz user@server_ip:/path/to/deploy
tar -xzvf my_program.tar.gz cd my_program ./my_program
六、可选:使用Docker简化部署 若需避免环境依赖问题,可使用Docker容器化部署:
Dockerfile
(在项目根目录下):FROM centos:latest RUN yum update -y && yum install -y gcc-gfortran COPY . /app WORKDIR /app RUN gfortran -o my_program my_program.f90 CMD ["./my_program"]
docker build -t my-fortran-app .
docker run -it my-fortran-app
此方式可确保程序在任何支持Docker的环境中一致运行。