首页 > 代码库 > CentOS 7上安装PGI 2017编译器
CentOS 7上安装PGI 2017编译器
1. 安装PGI编译器
在PGI的官方网站的右上角,有一个社区免费版(Community Edition)的下载链接(GET PGI FOR FREE),根据操作系统选择合适的版本即可。
需要注意的是,在安装前务必对下载文件进行MD5码校验,下载网页上提供了安装包的MD5验证码,校验正确之后再进行安装,Linux系统下可以使用命令。
安装手册也一并提供,位于下载网页下方的“Documentation"--->"PGI Installation Guide“,根据操作系统可以找到详细的安装步骤。
Additional Resources
- Documentation
- Learning Resources
- User Forums
- Porting & Tuning Guides
- Techical Publications
Installation Guides
- PGI Visual Fortran Installation Guide
安装过程中,需要注意:Any changes to your gcc compilers requires you to reinstall your PGI compilers. 也就是说,GCC编译器一旦有任何修改(包括更新、加载新的依赖等操作),就需要重新安装PGI编译器。
在CentOS7 x64系统上安装完成之后,对程序进行编译测试。
Makefile的全文如下:
1 PROGRAM = main
2 RM = rm -f
3 CC = gcc
4 F77 = pgf90
5 #F77FLAGS = -g
6 F77FLAGS = -g -fast
7
8 SOURCES.f = main.f
9
10
11
12 SOURCES = ${SOURCES.f}
13 OBJECTS = ${SOURCES.f:%.f=%.o}
14
15
16
17
18
19
20 all: ${PROGRAM}
21
22 ${PROGRAM}: ${SOURCES} ${OBJECTS}
23 ${F77} ${F77FLAGS} -o ${PROGRAM} ${OBJECTS}
24
25 clean:
26 ${RM} ${OBJECTS}
如果此时编译程序 $ make all ,则会报错如下:
f77 -f -o moda.o moda.f make: f77: Command not found make: *** [moda.o] Error 127
在终端中查询f77这个命令,确实不存在,而pgf90命令则是存在的:
$ f77 -v
bash: f77: command not found...
$ pgf90 -V
pgf90 17.4-0 64-bit target on x86-64 Linux -tp haswell
PGI Compilers and Tools
Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
2. 更新环境变量
为了使 f77 命令能链接到 PGI 编译器的程序中,需要设置环境变量并更新。这里,为了方便理解,我们用一个名为 FC 的变量来替代 f77,让 FC 指向 pgf90 命令。
首先,编辑环境变量文件
$ vi ~/.bashrc
在文件尾部加上以下PGI相关的环境变量:
# setting for PGI complier, edit by She export PGI=/opt/pgi/linux86-64/17.4 export MANPATH=$MANPATH:$PGI/man export LM_LICENSE_FILE=/opt/pgi/license.dat export PATH=$PATH:$PGI/bin export FC=$PGI/bin/pgf90
更新环境变量: $ source ~/.bashrc
之后,再次测试编译程序,则上一个错误已经消失。
CentOS 7上安装PGI 2017编译器