1. 安装PGI编译器

在PGI的官方网站的右上角,有一个社区免费版(Community Edition)的下载链接(GET PGI FOR FREE),根据操作系统选择合适的版本即可。  

需要注意的是,在安装前务必对下载文件进行MD5码校验,下载网页上提供了安装包的MD5验证码,校验正确之后再进行安装,Linux系统下可以使用命令。

安装手册也一并提供,位于下载网页下方的“Documentation"--->"PGI Installation Guide“,根据操作系统可以找到详细的安装步骤。

Additional Resources

Installation Guides

安装过程中,需要注意: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

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编译器的更多相关文章

  1. 在Centos 7上安装配置 Apche Kafka 分布式消息系统集群

    Apache Kafka是一种颇受欢迎的分布式消息代理系统,旨在有效地处理大量的实时数据.Kafka集群不仅具有高度可扩展性和容错性,而且与其他消息代理(如ActiveMQ和RabbitMQ)相比,还 ...

  2. 在CentOS 7上安装.NET Core R2跑Hello World

    前言 在上个月.NET Core出了最新版本预览版,只是在Window系统上试验了一下.原本想等发布正式版的时候在linux系统上试试,可能还需要一段时间,刚好有空可以折腾一下. 由于之前安装的Ubu ...

  3. 如何在 CentOS 7 上安装 Redis 服务器

    大家好,本文的主题是 Redis,我们将要在 CentOS 7 上安装它.编译源代码,安装二进制文件,创建.安装文件.在安装了它的组件之后,我们还会配置 redis ,就像配置操作系统参数一样,目标就 ...

  4. Linux Centos 系统上安装BT客户端 Transmission

    Linux Centos 系统上安装BT客户端 Transmission   Transmission是一种BitTorrent客户端,特点是一个跨平台的后端和其上的简洁的用户界面,以MIT许可证和G ...

  5. 在CentOS 7上安装phpMyAdmin

    原文 在CentOS 7上安装phpMyAdmin phpMyAdmin是一款以PHP为基础,基于Web的MySQL/MariaDB数据库管理工具.虽然已经存在着一些诸如Adminer的轻量级数据库管 ...

  6. 在CentOS 6上安装Apache和PHP

    本文演示如何在CentOS 6上安装Apache和PHP.CentOS 6自带的是Apache 2.2.3和PHP 5.1.6,您可以使用默认的CentOS包管理器进行安装yum.使用yum(而不是使 ...

  7. CentOS Linux上安装Oracle11g笔记

    CentOS Linux上安装Oracle11g 到 otn.oracle.com 网站上下载 Linux版的oracle 11g 编辑 /etc/sysctl.conf : kernel.shmal ...

  8. 如何在CentOS 7上安装Munin

    在CentOS 7上安装Munin 首先我们需要在我们的系统中添加EPEL仓库. yum install epel-release 步骤2.安装LAMP(Linux,Apache,MariaDB,PH ...

  9. centos 7 上安装 testlink 1.9.15/1.9.16/1.9.17/1.9.18 (mysql/php/httpd)

    1.9.18 的System Requirements - server.注意,适用于 1.9.15 及以后. Server environment should consist of: web-se ...

随机推荐

  1. 在sql中select的执行顺序

    <select{[distinct |all] columns |*}> [into table_name] <from {tables |views | other select} ...

  2. 对于react中的this.setState的理解

    一.this.setState第二个参数的作用:修改数据更新后最新的DOM结构 二.this.setState为什么是异步的? 1.setState只在合成事件和钩子函数中是“异步”的,在原生事件和s ...

  3. centos 增强功能安装失败

    centos 共享目录设置失败 /sbin/mount.vboxsf: mounting failed with the error: No such device 准备安装增强功能 [root@lo ...

  4. Spring中三种编程式事务的使用

    引入事务管理器 @Autowired TransactionTemplate transactionTemplate; @Autowired PlatformTransactionManager tr ...

  5. BZOJ 4195: [Noi2015]程序自动分析 并查集+离散化

    LUOGU 1955BZOJ 4195 题目描述 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2,x3...代表程序中出现的变量 ...

  6. Mac剪切AVI视频

    命令行执行 brew install ffmpeg ffmpeg -i video.avi -c:v copy -c:a copy -ss 00:01:30 -t 0:0:20 output.avi

  7. Appium+python 使用 press_keycode 如何输入大写字母

    背景:在做自动化测试项目时,需要在文本框中输入一串数字和字母组合的字符串(注:此页面为webview无法使用send_keys方法) 要使用send_keys方法首先要知道键盘字符对应的数值,这个可以 ...

  8. 记python使用grpc

    using grpc in Python gRPC是基于http/2的RPC框架,使用ProtoBuf作为底层数据序列化.Nginx服务器2018年3月17日引入gRPC支持. gRPC 是用来实现跨 ...

  9. BZOJ-3208|记忆化搜索-花神的秒题计划Ⅰ

    背景[backboard]: Memphis等一群蒟蒻出题中,花神凑过来秒题-- 描述[discribe]: 花花山峰峦起伏,峰顶常年被雪,Memphis打算帮花花山风景区的人员开发一个滑雪项目. 我 ...

  10. 【用户权限】MongoDB用户权限

    一.数据库用户角色: read:允许用户读取指定数据库readWrite:允许用户读写指定数据库 二.数据库管理角色:dbAdmin.dbOwner.userAdmin: dbAdmin:允许用户在指 ...