【Intel Parallel编译器(icc icpc ifort)Linux-centos7系统安装配置】

本文主要是介绍【Intel Parallel编译器(icc icpc ifort)Linux-centos7系统安装配置】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

@(toc)

Intel Parallel编译器(icc icpc ifort)Linux系统安装配置


本篇文章主要讲解在linux系统centos7.5/centos7.9版本中,Intel编译器的安装、环境导入、并行库调用以及在不同centos版本中安装时缺少32位库的解决方案等内容。

一、★Intel编译器定义

Intel Parallel Studio XE Cluster版C/C++ Fortran编译器,是一种主要针对Inetl平台的高性能编译器,可用于开发复杂且要进行大量计算的C/C++、Fortran程序。

Intel编译器编译C和C++源程序的编译命令分别为icc和icpc;编译Fortran源程序的命令为ifort。icpc命令使用与icc命令相同的编译器选项,利用icpc编译时将后缀为.c和.i的文件看作为C++文件;而利用icc编译时将后缀为.c和.i的文件则看作为C文件。用icpc编译时,总会链接C++库;而用icc编译时,只有在编译命令行中包含C++源文件时才链接C++库。

在Intel数学库(Intelmath)中的许多函数针对Intel微处理器相比针对非Intel微处理器做了非常大的优化处理。

二、★安装环境说明

  • 操作系统:centos7.5(已配置离线YUM源)
    Centos7.9_YUM源离线配置链接

  • 操作权限:具有root或sudo权限

  • INTEL软件安装版本: l_ccompxe_2011.4.191 / l_fcompxe_2011.4.191

  • Intel软件包含文件:

    Intel® C++ Compiler XE 12.0 Update 4 for Linux*
    Intel® Debugger 12.0 Update 4 for Linux*
    Intel® Math Kernel Library 10.3 Update 4 for Linux* OS
    Intel® Integrated Performance Primitives 7.0 Update 4 for Linux* OS
    Intel® Threading Building Blocks 3.0 for Linux, Update 7

    Intel® Fortran Compiler XE 12.0 Update 4 for Linux*
    Intel® Debugger 12.0 Update 4 for Linux*
    Intel® Math Kernel Library 10.3 Update 4 for Linux* OS

  • Intel_fortran下载链接:Intel® Fortran Compiler XE 12.0

  • Intel_icc/icpc下载链接:Intel® C++ Compiler XE 12.0第一部分

    ​ Intel® C++ Compiler XE 12.0第二部分

三、★Intel编译器安装

3.1 确认selinux状态
# 临时修改selinux状态
getenforce # 查看selinux状态,确保状态是Disabled或permissive
setenforce 0 # 临时设置selinux状态为permissive
# 永久修改selinux状态,需要重启系统生效
sed -e 's/SELINUX=.*/SELINUX=disabled/g' /etc/sysconfig/selinux

注意! 确保selinux的状态是permissive或disabled,否则会出现无法安装的状态

3.2 安装C/C++编译器
# 软件版本:l_ccompxe_2011.4.191.zip
zip -F l_ccompxe_2011.4.191.zip --out  l_ccompxe_2011.4.191-tmp.zip #分卷解压的命令
unzip l_ccompxe_2011.4.191-tmp.zip
cd  l_ccompxe_2011.4.191
chmod +x install.sh
chmod +x pset/32e/install.32e
chmod +x pset/chklic/32e/chklic
chmod +x pset/activation/install_fnp.sh
./install.sh

注意! chmod +x 4个命令并不是必须执行的,需要执行的情况是软件在windows系统中解压后又压缩导入linux系统中,在linux系统解压后会出现一些可执行文件的执行权限的丢失,导致安装的时候出现Permission denied的错误,无法安装,这个时候才需要执行chmod +x 文件名的命令

在这里插入图片描述

step1:选择1放弃检测

在这里插入图片描述

step2:如果安装过,保留了license文件,就选1,否则第一次安装选4

在这里插入图片描述

step3:选择2,使用license文件:NCOM_L_CMP_CPP_N5D5-W47FLRPC.lic

在这里插入图片描述

step4:指定NCOM_L_CMP_CPP_N5D5-W47FLRPC.lic 文件所在的绝对路径

在这里插入图片描述

step5:如果路径正确,NCOM_L_CMP_CPP_N5D5-W47FLRPC.lic文件没有问题,就会出现激活成功

在这里插入图片描述

step6:如果选择Intel默认安装路径就选择1,如果想指定安装路径选择2,并输入指定安装绝对路径

3.3 安装ifort编译器
# 软件版本: l_fcompxe_2011.4.191
tar -zxvf l_fcompxe.tar.gz
cd  l_fcompxe_2011.4.191
chmod +x install.sh
chmod +x pset/32e/install.32e
chmod +x pset/chklic/32e/chklic
./install.sh

注意! chmod +x 这几个命令并不是必须的执行的,需要执行的情况是软件在windows系统中解压后又压缩,导入linux系统中,在linux系统解压后会出现一些可执行文件的执行权限的丢失,导致安装的时候出现Permission denied的错误,无法安装,这个时候才需要执行chmod +x 文件名的命令

Intel fortran编译器和3.2节编译C++/C编译器是一样的方法,只要注意最后的安装路径要选择一样的路径,也就是说C++/C选择了默认安装路径,这里也要选择默认安装路径。

四、★Intel编译器环境导入

# shell环境为:bash
$ vim  ~/.bashrc	#增加如下内容,保存退出
source  /opt/intel/composerxe-2011.4.191/bin/compilervars.sh intel64 #如果采用默认安装就是这个路径
# shell环境为:csh/tcsh
$ vim  ~/.bashrc	#增加如下内容,保存退出
source  /opt/intel/composerxe-2011.4.191/bin/compilervars.csh intel64 #如果采用默认安装就是这个路径
source ~/.bashrc # 立即生效

注意! 如果需要在32位的系统中进行环境导入的话,只需要把intel64替换成ia32

五、★Intel环境查看及并行库调用

# 查看icc/icpc/ifort编译是否指向正确路径
which icc
which icpc
which ifort 

具体mpich/openmpi并行编译调用,请看作者另两篇文章:

Mpich_linux-centos7.9系统下最全编译安装调用

OpenMPI_linux-centos7.9系统源码编译安装调用

六、★安装错误说明

在这里插入图片描述

安装inter编译器时,出现libstdc++ 32位的库没有安装,导致无法安装成功。具体解决方法有以下三种情况

6.1联网状态
yum install -y libstdc++.i686
6.2 断网离线状态,且centos系统版本在7.5及以下
# 已配置离线yum源
yum install -y libstdc++.i686
6.3 断网离线状态,且centos系统版本是7.6及以上
# 寻找一台版本相同的操作系统,注意一定要相同。
yumdownloader  libstdc++.i686  --resolve   --destdir=指定下载路径 
# 此命令是下载libstdc++.i686包及依赖的包,下载路径地址根据自己情况设定
cd  /home/longdaidai/libstdc++_32 # 这里假定路径为/home/longdaidai/libstdc++_32
ls -l    
# 查看下载内容,总共有12个rpm包,把以上下载的rpm包全部导入到无法联网的主机中/home/longdaidai/local_yum/Packages
# 这里/home/longdaidai/local_yum/Packages路径为离线主机YUM源的包配置地址
#切换回不能联网的主机
cd /home/longdaidai/local_yum
rm  -rf repodata
createrepo .  #注意后面的点,不要丢掉
yum clean all
yum makecache
yum install -y libstdc++.i686
rpm -qa | grep  libstdc++ # 如果出现libstdc++-4.8.5-36.el7.i686,说明安装成功

注意! 在离线状态下,系统为centos7.6以上的版本,即使配置了离线yum源,也不能直接安装libstdc++.i686 32位的库,因为在官方的版本中7.6以上版本的yum源码包中取消了libstdc++.i686 32位库的安装包。

七、★最后

以上内容都是经过实战验证过的,本次用来安装的intel版本较低,在高版本的安装过程中,安装过程大体一致。如果你在离线状态下安装,非常建议在centos7.5及以下安装,这样即使不能联网,只要配置好离线YUM源就可以避开libstdc++32位缺失的问题。
(●’◡’●)最后感谢屏幕另一端你的支持。

这篇关于【Intel Parallel编译器(icc icpc ifort)Linux-centos7系统安装配置】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/272590

相关文章

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Linux samba共享慢的原因及解决方案

《Linuxsamba共享慢的原因及解决方案》:本文主要介绍Linuxsamba共享慢的原因及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux samba共享慢原因及解决问题表现原因解决办法总结Linandroidux samba共享慢原因及解决

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一

springboot security之前后端分离配置方式

《springbootsecurity之前后端分离配置方式》:本文主要介绍springbootsecurity之前后端分离配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的... 目录前言自定义配置认证失败自定义处理登录相关接口匿名访问前置文章总结前言spring boot secu

一文详解SpringBoot响应压缩功能的配置与优化

《一文详解SpringBoot响应压缩功能的配置与优化》SpringBoot的响应压缩功能基于智能协商机制,需同时满足很多条件,本文主要为大家详细介绍了SpringBoot响应压缩功能的配置与优化,需... 目录一、核心工作机制1.1 自动协商触发条件1.2 压缩处理流程二、配置方案详解2.1 基础YAML