`
chemingliang
  • 浏览: 134726 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在ubuntu上安装Intel Fortran和C++(转)

 
阅读更多

转自 http://blog.163.com/zhibinfan@yeah/blog/static/16209617020113941516622/

 

Intel软件包下载地址http://software.intel.com/zh-cn/articles/non-commercial-software-download/


按照下面的方法是可以顺利安装的。但是,在test时会报错说:
ifort: internal error: error generating temporary file name  (shared/driver/hostutil.c, line 366)
因为我明明知道我的tmp是有空间的,所以非常奇怪。但是为了确保不会出问题,还是把/tmp的权限修改成了777.结果错误通过!
=========================================================
首先:准备必要的库。
在64位ubuntu下安装intel fortran 11

此 为64位ubuntu下安装intel fortran 11 for linux的一些问题的解决步骤,写这个的原因是有几个师兄师弟在64位的系统下装intel fortran都没有安装成功(多半应该是依赖关系没有解决),所以尝试写一个教程,在这里记录备用。
我自己是只在ubuntu下装过,用apt 类型的包管理器的系统应该都一样了,不过就算包管理器换成了yum应该也没什么区别,把apt-get install 换成yum install也差不多了吧……以下是一些步骤:

首先保证你的系统装有ifort需要的编译使用的基本库。如gcc g++等,正常的话,一般的系统都已经安装了。
如果没有,可以使用下面命令安装,安装过程中可能会询问你是否要让apt-get自己解决依赖关 系,把问题都交给计算机好了。
apt-get install gcc
apt-get install build-essential
apt-get install g++

如 果你像我一样在64位系统上同时也安装32位的ifort,你会需要再安装一些32位库支持,不过,据一些 同学报告,即使只安装amd64版本的编译器也需要这些库(!),所以不管怎样都装了吧,也不差那几百KB的空间……这些库在我这里是已经安装了的,如果 你没有,使用命令:
apt-get install ia32-libs
之后就可以安装其他一些32位的库了,可能还会需要安装下面这些 库,如果你的机器之前做过32位程序的编译的话,这些库应该都已经安装了:
apt-get install libstdc++5
apt-get install lib32stdc++6
apt-get install libc6-dev-i386
apt-get install gcc-multilib
apt-get install g++-multilib

然而,如果你用的是 9.10版本的ubuntu,你可能会发现9.10的库里面已经不提供libstdc++5了(……装ifort这个库是必要的)
不过我们可以使 用debian的库(来,debian的用户都来骂ubuntu吧),到
http://packages.debian.org/stable/base/libstdc++5
下 载i386和amd64的版本deb包
cd到deb包所在的目录,直接安装amd64的包:
dpkg -i libstdc++5_xxxxx_amd64.deb
而对于i386的包会有些麻烦,因为如果你直接安装这个包的话(可能会需要加 --force-architecture参数),安装程序会将32位的库覆盖64位的……
所以可能需要手动解压这个包:
dpkg --extract libstdc++_xxxxx_i386.deb ./

之后将解出的文件夹中的lib目录下的 libstdc++.so.5.xxx复制到系统的32位库中,再将它链接到libstdc++.so.5上面即可。
cd usr/lib
cp libstdc++.so.5.xxx /usr/lib32
cd /usr/lib32
ln -s libstdc++.so.5.xxx libstdc++.so.5


======================================================================
然后安装rpm包
经过测试表明,直接运行安装包中的 install.sh 文件确实无法完成安装。通过上网搜索找到了相关的安装方法,下面只是把安装步骤记录一下。
提示:下面的信息是按照 10.1.008 版本编译器安装步骤记录的,如果是其他步骤,请自行调整版本编号等信息。
1、获得软件包及相关文件
首 先去http://www.intel.com/cd/software/products/apac/zho/compilers /326135.htm,填写自己的 email 地址,并下载自己想要的编译器安装包,在出现下载连接地址之后,可以选择需要安装的版本,我选择的版本为免费非商业版本 10.1.008。这也是写这篇文档时最新的版本,其他版本安装过程应该是类似的。
下载名为 l_cc_p_10.1.008.tar.gz 和 l_fc_p_10.1.008.tar.gz 的安装包,分别为 Intel C++ 编译器 和 Intel Fortran 编译器。
同时去注册的 email,收取 Intel 公司发来的邮件,邮件附件中包含有相关的 license 文件,名字分别为 NCOM_L_CMP_CPP_NB96-62KR6ZTD.lic 和 NCOM_L_CMP_FOR_NDXX-WMM6JDJF.lic。
安装过程中需要 alien 工具将 RPM 包转换为 debian 安装包,如果没有,执行
代码:
sudo apt-get install alien
安装。
2、安装软件包
其实两款编译器的安装过程是类似的,这里一起写下了。
解压:
代码:
tar xzvf l_cc_p_10.1.008.tar.gz
tar xzvf l_fc_p_10.1.008.tar.gz
编译器安装
C++ 编译器:
代码:
cd l_cc_p_10.1.008/data
sudo alien -cv intel-icc101008-10.1.008-1.i386.rpm
sudo dpkg -i intel-icc101008_10.1.008-2_i386.deb
Fortran 编译器:
代码:
cd l_fc_p_10.1.008/data
sudo alien -cv intel-ifort101008-10.1.008-1.i386.rpm
sudo dpkg -i intel-ifort101008_10.1.008-2_i386.deb
3、LICENSE 文件
创建 /opt/intel/licenses 目录
代码:
sudo mkdir -p /opt/intel/licenses
把邮件附件中的文件拷贝到这个目录下
代码:
sudo cp /your/license/path/NCOM_L_CMP_CPP_NB96-62KR6ZTD.lic /opt/intel/licenses
sudo cp /your/license/path/NCOM_L_CMP_FOR_NDXX-WMM6JDJF.lic /opt/intel/licenses
4、设置环境变量
Intel C++ 编译器:
代码:
cd /opt/intel/cc/10.1.008/bin
使用 perl 修改文件中的内容(注意第二行中的 \/opt\/intel\/cc\/10.1.008/ 表示安装路径,其他版本按照实际情况调整)
代码:
sudo perl -pi -w -e 's/!\/bin\/sh/!\/bin\/bash/g;' *
sudo perl -pi -w -e 's/<INSTALLDIR>/\/opt\/intel\/cc\/10.1.008/g;' *
执行脚本文件
代码:
. ./iccvars.sh
如果希望每次打开终端都能够自动设置,将
代码:
source /opt/intel/cc/10.0.008/bin/iccvars.sh
加入到 ~/.bashrc 文件末尾。
Intel Fortran 编译器:
代码:
cd /opt/intel/fc/10.1.008/bin
使用 perl 修改文件中的内容(注意第二行的 \/opt\/intel\/fc\/10.1.008/ 表示安装路径,其他版本按照实际情况调整)
代码:
sudo perl -pi -w -e 's/!\/bin\/sh/!\/bin\/bash/g;' *
sudo perl -pi -w -e 's/<INSTALLDIR>/\/opt\/intel\/fc\/10.1.008/g;' *
执行脚本文件
代码:
. ./iccvars.sh
如果希望每次打开终端都能够自动设置,将
代码:
source /opt/intel/fc/10.1.008/bin/ifortvars.sh
加入到 ~/.bashrc 文件末尾。
5、验证安装
执行命令
代码:
icc --version
应当看到如下信息:
代码:
icc (ICC) 10.1 20070913
Copyright (C) 1985-2007 Intel Corporation. All rights reserved.
执行命令
代码:
ifort --version
应当看到如下信息:
代码:
ifort (IFORT) 10.1 20070913
Copyright (C) 1985-2007 Intel Corporation. All rights reserved.
如果一切正常,表明安装成功。
6、卸载
卸载过程还是比较简单的。
代码:
sudo apt-get remove intel-icc101008
sudo apt-get remove intel-ifort101008
编辑 ~/.bashrc 文件,删除代码
代码:
source /opt/intel/cc/10.1.008/bin/iccvars.sh
source /opt/intel/fc/10.1.008/bin/ifortvars.sh
评论
#SCYANGYU 发表于2008-05-02 13:45:33 IP: 61.171.13.*
不错!
照着这样做,解决了我的问题!
不过有两点没有说清,我来补充一下:
需要把lic文件的读写权限进行修改,否则会出现lic找不到的问题。
sudo chmod 777 NCOM_L_CMP.lic
#SCYANGYU 发表于2008-05-02 13:47:50 IP: 61.171.13.*
使用 perl 修改文件中的内容,就是修改ifortvars.sh文件的内容。
分享到:
评论

相关推荐

    Ubuntu18.04安装intel编译器的教程_202109131

    在本文中,我们将详细探讨如何在Ubuntu 18.04系统上安装Intel的编译器,即Intel oneAPI Base Toolkit和Intel oneAPI HPC Toolkit。这两个工具包提供了丰富的开发工具,包括编译器、数学库和并行运行时系统,适用于高...

    ubuntu下intel编译的安装说明

    本文将详细讲解如何在Ubuntu下安装和使用Intel编译器。 首先,你需要确保系统是最新的。打开终端,输入以下命令进行更新: ```bash sudo apt update sudo apt upgrade ``` 接下来,添加Intel软件包的官方仓库。访问...

    linux-通过一个简单的脚本将英特尔MKL添加到DebianUbuntu系统

    通过以上步骤,你就成功地在Debian或Ubuntu系统上安装了英特尔MKL。现在你可以利用MKL提供的高效计算功能,加速你的科学计算项目。不过,要注意的是,MKL是一个商业软件,尽管有免费试用版,长期使用可能需要购买...

    Fortran 语言安装与使用.docx

    它的发展经历了多个版本,包括Fortran 77、Fortran 90/95、Fortran 2003和Fortran 2008等,每一代都在向前兼容的基础上增加了新的特性。 在当前的Fortran编译器市场中,主要有两大类别:开源和商业。开源编译器如...

    VASP 详细安装过程

    在安装VASP之前,需要准备相关的安装包,包括: - Intel Fortran XE 2013 for Linux(parallel_studio_xe_2013_update2.tgz及其授权文件) - openmpi-1.8.5.tar.gz - fftw-3.3.4.tar.gz - GotoBLAS2-1.13.tar.gz - ...

    INTEL Parallel Studio XE 2016 With Updates License

    `README.md` 文件则可能包含安装指南、使用说明或更新日志等重要信息,用户在安装和使用前应仔细阅读。 总结起来,Intel Parallel Studio XE 2016是一款强大的工具集,为开发者提供了全面的解决方案,以实现高效、...

    cmake2.8.0_deb

    在安装过程中,系统会自动处理依赖关系,但如果没有,可能需要手动解决或者使用`apt-get`或`apt`来安装缺失的依赖。 在CMake 2.8.0这个版本中,用户可以编写CMakeLists.txt文件,这是一个文本文件,包含了构建项目...

    Intel多线程程序开发指南1

    - **编程经验**:具有高级语言(如C、C++或Fortran)的编程经验。 - **并发编程基础**:熟悉基本的并发编程概念和技术。 - **线程库熟悉度**:了解至少一种线程库(如OpenMP、Pthreads或Win32线程API)。 总之,...

    SGI Altix

    - **Intel Compiler Suite Professional Edition**:包含了Intel C++和Fortran编译器,支持Debian和Ubuntu发行版,并加入了OpenMP支持以兼容Microsoft和GNU的OpenMP实现。 - **GNU编译器**:通常包含在商业Linux...

    MinGW(x86_64-8.1.0-release-posix-sjlj-rt_v6-rev0.7z)

    总之,MinGW(x86_64-8.1.0-release-posix-sjlj-rt_v6-rev0.7z)是一个适用于64位Windows系统的GCC编译器版本,提供了一套完整的开发环境,便于开发人员在Windows上编写、编译和调试跨平台的C和C++程序。

    xtensa-esp32-elf-gcc8_4_0-esp-2021r2-linux-amd64.tar.gz

    XTENSA ESP32-Elf-GCC工具链是Espressif Systems为ESP32芯片设计的交叉编译工具,其中包含了GCC(GNU Compiler Collection)8.4.0版本,这是针对XTENSA架构定制的C、C++、Fortran等语言的编译器。2021R2是这个工具链...

    gcc-3.4_install_deb_pakage

    在本案例中,我们关注的是GCC 3.4版本的安装包,具体为cpp-3.4、gcc-3.4和gcc-3.4-base三个DEB格式的包,这些文件主要用于在基于Debian或Ubuntu的Linux系统上进行安装。 cpp-3.4_3.4.6-5_i386.deb:这个文件是预...

    gmsh-to-vtk-CPP11:我的Fortran代码gmsh-to-vtk-and-tecplot的C ++ 11版本

    gmsh-to-vtk-CPP11 我的Fortran代码gmsh-to-vtk-and-tecplot的C ++ 11版本一些功能: 使用现代C ++标准(C ++ 11)的面向对象的编程。 大量使用C ++标准模板库。 评论: 您将需要成熟的C ++ 11编译器来编译和运行我...

    gcc-linaro的交叉编译资源.tar.gz

    GCC(GNU Compiler Collection)是GNU项目的一部分,提供了C、C++、Objective-C、Fortran、Ada和Go等多种语言的编译器。Linaro是一家非营利组织,专注于优化和提供开源软件栈,特别是针对ARM架构。GCC-Linaro是...

    MPI配置及其相关课件

    4. **编写并行程序**:使用C、C++或Fortran等语言,调用MPI库中的函数来编写并行程序。例如,`MPI_Init()`用于初始化MPI环境,`MPI_Comm_rank()`获取当前进程的ID,`MPI_Send()`和`MPI_Recv()`用于进程间通信。 5. ...

    k8s资源链接

    - **准备**:在安装前需要确保机器满足一定的硬件要求,并且禁用 SELinux 或将其设置为 Permissive 模式。 - **安装过程**:安装 Docker 作为容器运行时,然后安装 kubelet、kubectl 和 kubeadm,并使用 kubeadm ...

    MPI环境搭建完美集合

    MPI程序可以在单个计算机上的多个处理器,或者跨越网络连接的多台计算机上运行。 1. **选择MPI实现**: MPI有多种实现,如OpenMPI、MPICH、Intel MPI等。这里我们以常用的OpenMPI为例。OpenMPI是一个开源的MPI实现...

    spec2000result.i5

    这些编译器版本均来自Ubuntu 16.04 LTS的软件仓库,是进行C/C++/Fortran程序编译的标准工具。它们对于确保基准测试的准确性非常重要,因为不同版本的编译器可能会对代码优化产生影响。 ### SPEC2000测试结果分析 ...

Global site tag (gtag.js) - Google Analytics