首先,我不推荐大家对这一部分内容过多的研究和投入,因为经过我在Linux系统上的使用体验来看,程序运行的效果并不好。所以,如果我们不是很精通计算机的话,使用Windows版本运行程序就ok了。
写这部分内容只是想把方法分享出来,而需不需要使用就看大家自己的选择了。
一、说明书UserGuide上的Linux编译部分
直接看第6部分。
首先,我们要知道编译的目的是什么。编译的目的和结果就是,会产生一个ddscat运行文件,就是和Windows版本功能一样的ddscat.exe文件,不过,这次产生的是运行在Linux系统上的文件(Windows系统自带了ddscat,而使用Linux需要我们手动编译出ddscat)。
接下来,我们要知道怎么编译。在Linux系统上对源文件进行编译,需要一个Makefile文件。什么是Makefile,看一下某百科对其的定义:一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,Makefile定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 Makefile就像一个Shell脚本一样,也可以执行操作系统的命令。也就是说,这个Makefile文件写了一些编译的规则。
再看说明书。说明书表示,ddscat的src文件夹中,有一个默认的Makefile文件,等下我们展示。那么想要编译Makefile文件的话,有一些前提:Linux系统需要已安装了Fortran-90编译器(如,gfortran, g95, Intel R ifort, or NAG R f95),和cpp。
There are a number of different ways to create an executable,表示Makefile中记录了本次编译需要什么编译器,是单精度还是双精度(sp or dp),是否开启OpenMP、MKL、MPI。然后说明书给出了Makefile默认的配置:使用gfortran编译器、单精度算法、不使用OpenMP、MKL、MPI(OpenMP和MPI都是用来做并行计算的,MKL是英特尔数学核心函数库,这三个我们暂时用不到)。
现在我们来看看Makefile文件,进入到src文件夹中,使用文本编译器打开Make file文件。
准备好需要的配置,接下来就是编译代码。需要在Linux系统中,进入到当前src文件夹,然后在终端运行make ddscat就可以。
二、编译前的准备——软件安装系统配置
如说明书中的要求,我们需要先安装fortran系列编译器和ifort,ifort需不需要安装我这里不太确定,记得最开始研究的时候是需要安装ifort的。我们先来装gfortran。
一般安装Fortran总共需要四步:分别安装gcc、g++、gfortran、ifort。
1)安装gcc编译器。
一般Linux系统会自带gcc。查看是否装有gcc可通过指令"gcc -v"。
若没有安装gcc,则可通过指令"yum -y install gcc"来安装。
图中我的电脑自带了gcc
2)安装g++。
可通过命令"sudo apt-get install build-e