计算化学公社

标题: 【VASP安装】从Linux小白到vasp成功编译(centos虚拟机下安装教程) [打印本页]

作者
Author:
BB_LFJ    时间: 2018-3-5 23:50
标题: 【VASP安装】从Linux小白到vasp成功编译(centos虚拟机下安装教程)
本帖最后由 BB_LFJ 于 2018-3-6 13:33 编辑

  相较于很多大佬几小时装好一个软件,我磕磕绊绊花了一个寒假,从文字行学起,到vasp简单的计算,现在分享一些自己浅显的安装经历,希望能帮到许多也刚刚入门的大家少走一些弯路吧。
  接下来引用到的文章或者网站,均会注明出处,如有冒犯,请联系修改。


*****百度云链接(包含除虚拟机本身以外的所有必要文件):链接:https://pan.baidu.com/s/1W5YPSIY3OXVsQzQiRPVCQw 密码:myjx

安装前必须掌握的:linux结构组成和基本命令,基本命令有目录(文件夹的添加删除)、vi或者vim编译文件的能力、yum安装、tar解压。软件包由win上载到linux系统请百度,一般都用xshell或者xmanager(都是软件,破解版百度)

*****安装参考:http://bbs.keinsci.com/thread-4267-1-1.html     来自本站youyno用户,在CSDN也可以找到他的同一篇帖子。

心得:1.centos版本必须6.x
      2.帖子第二页提到的三个32位库在所有安装前必须完成(可以自行百度linux32位库文件安装,其中要对yum命令比较了解)
      3.大的错误一般是软件依赖关系没有处理好,小的错误基本上都是路径出错,安装完整个vasp我才算对linux系统的文件结构有比较充分的了解,边安边学。
      4.除了openmpi以楼主方式没有编译成功外,其他请务必一字不差地照做,该修改的位置路径要修改正确。
      5.所有手动新安装的软件都要添加路径到.bashrc文件内,教程只给了准备工作的openmpi、fftw、intel编译环境的路径添加指导,实际所有安装完毕要使用vasp时为了方便起见(因为手动输入绝对路径也可以运行),也把路径添加进.bashrc文件,这样在工作目录下键入命令vasp_std就可以正确计算。
      6,可能还有很多种错误情况,但是多看多想很重要,缺什么补什么,搜相关资料,找到补齐的措施。不要害怕看见一大串错误结果,从第一个出错的位置细心分析,检查。

*****其中,openmpi安装以此网站为准:http://blog.csdn.net/amaowolf/article/details/7938357     来自CSDN的amaowolf用户,真是帮了大忙,我在openmpi这里卡了很久

*****关于运行前的输入文件参考教程以及学习vasp:http://www.bigbrosci.cn/LVASPTHW     来自大师兄科研网,也是我师兄给我推荐的自学vasp的优质网站


(POTCAR文件所属的赝势函数文件需要自行下载再上载到Linux系统里)
(运行脚本可以找自己的师兄师姐要,这是我基于实验室的主机guest身份运行需要的,主要是需要提交文件到主机上进行运算。另外自己pc上的vasp安装好添加了路径后,运算时在自己电脑上完成,此时在工作目录下键入vasp_std就可以了。)




注明出处,欢迎转载。


作者
Author:
BB_LFJ    时间: 2018-3-6 07:49
本帖最后由 BB_LFJ 于 2018-3-6 08:56 编辑

  本帖适用于母胎到现在都未接触过文字行的纯种小白,如果有需要绝对详细的安装教程,我过一段时间可以贴上来。只是我个人不太赞成这么做,因为每一篇帖子都没有办法涵盖到所有的知识点,我自己不懂的名词,不懂的相关知识,都一一溯源回去学。

  linux教程本人用的鸟哥的私房菜(各大高校图书馆一定有),至少要把基础部分,和需要的部分读完,练习也不能偷懒,我因为一直只想输入,从不输出,因此一开始很多命令都只会阅读,没有办法自己编辑和修改。

  linux基础书籍学习完以后我就开始到处找vasp安装教程了,其中为了能将安装包放入Linux系统,搜索一番后一开始用的xftp,后来经师兄推荐,改用了xshell。区别就在于xftp还是图形界面,我一开始还是过于依赖它了,xshell文字行理当成为要克服的一处困难。另外在网络上也发现了可用的xmanage,还没用过,不过据说比xshell好用。

  教程查找有一段时日,保存了很多链接到本地,发现许多教程提到的安装环境的准备软件都没有很详细说明,而且基于centos的教程很少(话说ubuntu霸占世界了吗。。。)而且作为小白,这么多年的windows习惯,觉得很多软件和系统版本都不是问题,觉得越新越好,新的怎么可能兼容不了旧的呢?虽然还没有完全知道这其中的原理,但在linux里,事实就是这样,至少在安装vasp时我跟着走的那篇教程,是每一个软件的版本都得对应上的,包括centos的系统版本。我一开始直接用了centos7,觉得新一点没什么问题,后来整整苦恼了我两天才痛下决心换centos6.6

  先到这里,还有要说的会继续的。
  

  谢谢大家花时间看完了~
作者
Author:
sobereva    时间: 2018-3-6 13:10
BB_LFJ 发表于 2018-3-6 07:49
本帖适用于母胎到现在都未接触过文字行的纯种小白,如果有需要绝对详细的安装教程,我过一段时间可以贴上 ...


搞计算的用CentOS是正途。我写的博文里所有编译教程几乎全都是RHEL或CentOS。如果没有参考教程,完全编译一个之前没接触过的新的科研类程序,CentOS比Ubuntu更容易成功、遇到的困难更少。
Linux的情况远比Windows复杂,毕竟Windows是微软一个公司出的,而Linux由于其开放性太强,不同Linux系统、不同版本,其默认设置、自带的程序包、库的版本、编译器版本等诸方面可能影响编译的因素都可能差异极大,所以我写编译教程的时候都十分明确指明编译器、操作系统。很老程序在新版本系统里往往很难编译,而新程序在老版本系统也往往很难编译,这是很常见的现象。
用CentOS7肯定也能编译,只不过在有较多编译经验、对Linux的理解的基础上,才容易针对具体遇到的问题想出恰当的解决对策。

作者
Author:
BB_LFJ    时间: 2018-3-6 13:27
sobereva 发表于 2018-3-6 13:10
搞计算的用CentOS是正途。我写的博文里所有编译教程几乎全都是RHEL或CentOS。如果没有参考教程,完全编 ...

  啊谢谢站长!之前我的确是不太能理解版本上的问题,也不太理解既然计算都用centos了,为什么很难看到有人直接指出Ubuntu的不足(很多帖子仅仅只是区别了两种平台的表象差异,即便是指出了,也会提到Ubuntu也很稳定之类的客套话?)
  这次的安装仅仅是摸到了一点门道,往后希望在学习中积累更多经验,在版本的切换过程中更游刃有余吧。
作者
Author:
sobereva    时间: 2018-3-6 13:55
BB_LFJ 发表于 2018-3-6 13:27
啊谢谢站长!之前我的确是不太能理解版本上的问题,也不太理解既然计算都用centos了,为什么很难看到有 ...


主流的Linux发行版本没有不稳定的,Ubuntu也绝对不会比CentOS更稳定。专门用做计算服务器的,极少有用Ubuntu的,用的大多都是RHEL或者CentOS,所以CentOS/RHEL稳不稳定自不必说。
在我看来,只不过Ubuntu显得比较“时髦”,显得更适合作为桌面系统,才导致用户更多。毕竟搞科研的只是Linux用户中很少部分,所以有机会使用CentOS/RHEL并进而体会到它整体更适合科研工作者、对科研工作者更友好这一点的人毕竟是有限的(必然也有人对此意见持不同看法,我不予争论)。
作者
Author:
highlight    时间: 2018-3-6 15:52
本帖最后由 highlight 于 2018-3-6 16:01 编辑

我用的系统就是centos7,似乎可以编译成功的。
不过没有自己安装openmpi和fftw,而是全部使用Parallel Studio XE 2018自带的。(就是不知道这样对运行效果有什么影响)
如果使用Parallel Studio XE的默认安装路径,makefile.include直接去arch找linux_intel,不进行修改就可以。

参考http://bbs.keinsci.com/thread-7198-1-1.html二楼提到的http://scc.ustc.edu.cn/zlsc/jsrj/201703/t20170330_273337.html中的方法。
PS:还有,为什么要手动编译openmpi呢?不是可以yum么。。。



作者
Author:
BB_LFJ    时间: 2018-3-6 19:02
highlight 发表于 2018-3-6 15:52
我用的系统就是centos7,似乎可以编译成功的。
不过没有自己安装openmpi和fftw,而是全部使用Parallel Stu ...

请问18版的是在官网上申请的吗?如果有资源的话,可否分享一下嘛。
我尝试用过yum安装openmpi,但是没有安装成功。这个我再试试。
以及centos7的vasp编译我还是想试一试的,谢谢你的分享了~
作者
Author:
highlight    时间: 2018-3-6 19:55
http://bbs.keinsci.com/thread-7694-1-1.html
申请参考这个帖子就行,至于破解版的证书有人在本论坛分享过,我没找到
安装的时候先yum install -y kernel-devel libstdc++-devel.i686 glibc-devel.i686 libgcc.i686,然后用install.sh装,要是在桌面系统下就用install_GUI.sh,图形化界面很友好。
安装完直接source /opt/intel/bin/compilervars.sh intel64就可以,编译器、impi和mkl都有了。
再cd $MKLROOT/interfaces/fftw3xf ;make libintel64   ,fftw也有了。
要是卸载的时候最好别直接删(虽然理论上/opt下的都应该能直接删),去安装目录下找找uninstall.sh,如果直接删了以后重新安装可能会有些麻烦。
参考这个https://software.intel.com/en-us ... -or-not-functioning

yum安装了mpich或openmpi不能直接用可能是因为没设置相应的环境变量。
安装目录好像在/lib64/openmpi里,你仿着这那个帖子改一下export那几句就行

还有,Xmanager Enterprise 6 目前是测试版,是可以免费用的吆。

PS:因为我不用vasp,周围也没人用,所以我只能确定可以编译出来,似乎还能运行,运行效果咋样我判断不了。。。
作者
Author:
niobium    时间: 2018-3-6 20:06
“文字行”三个字是你自创的还是从哪里看到的?

作者
Author:
BB_LFJ    时间: 2018-3-6 20:14
highlight 发表于 2018-3-6 19:55
http://bbs.keinsci.com/thread-7694-1-1.html
申请参考这个帖子就行,至于破解版的证书有人在本论坛分享 ...

感谢~
作者
Author:
BB_LFJ    时间: 2018-3-6 20:16
niobium 发表于 2018-3-6 20:06
“文字行”三个字是你自创的还是从哪里看到的?

突然冒汗。。。我其实很多时候自己并不清楚用的对不对,这个是在学linux时看到有图形界面和文字行两种系统运行模式,我在这里才这么说的。如果有什么不够妥当的地方,请指教!
作者
Author:
highlight    时间: 2018-3-6 20:52
BB_LFJ 发表于 2018-3-6 20:14
感谢~

再次修正一下,makefile.include需要修改,在OBJECTS里加$(MKLROOT)/interfaces/fftw3xf/libfftw3xf_intel.a

参考https://cms.mpi.univie.ac.at/wiki/index.php/Installing_VASP
作者
Author:
niobium    时间: 2018-3-6 20:59
BB_LFJ 发表于 2018-3-6 20:16
突然冒汗。。。我其实很多时候自己并不清楚用的对不对,这个是在学linux时看到有图形界面和文字行两种系 ...

一般叫命令行吧,“学linux时看到”是哪里看到的?我只是没见过这种说法,所以好奇而已。
还有,一般野路子学习一个东西可能比较快,但往往不全面,而且可能有偏差。建议以后有时间可以再系统地看看书。
作者
Author:
BB_LFJ    时间: 2018-3-6 22:01
highlight 发表于 2018-3-6 20:52
再次修正一下,makefile.include需要修改,在OBJECTS里加$(MKLROOT)/interfaces/fftw3xf/libfftw3xf_inte ...

辛苦了,因为我自己平时学业就很忙,所以非常感谢能抽出宝贵时间来分享的人~
作者
Author:
BB_LFJ    时间: 2018-3-6 22:05
niobium 发表于 2018-3-6 20:59
一般叫命令行吧,“学linux时看到”是哪里看到的?我只是没见过这种说法,所以好奇而已。
还有,一般野 ...

嗯,我的确学的很浅显,不系统,只是目前在这样跌跌撞撞的过程中通过参照教程学会了很多的知识和思考方式,也稍许给我一点希望和动力吧。
我也的确意识到自己的知识相当的不全面,还是要多阅读多学习了,谢谢指导!
作者
Author:
只爱烧酒    时间: 2018-5-5 18:56
按照教程一步一步走,在编译“fftw”的时候,configure遇到了“could not find mpi library for --enable-mpi”,这个不是个例,网上也有人在反馈用同一个帖子的方法遇到相同的问题,上一步openmpi安装没问题的,which mpif90也正常。如果不开启enable mpi,编译fftw就没有问题。。

作者
Author:
斯巴达·狗子    时间: 2018-5-18 11:10
对俺等小白来说, 好帖!!!
作者
Author:
Shiguoqiang    时间: 2018-5-21 22:02
楼主你好,按照你的过程编译VASP,最后提示
ipo: warning #11010: file format not recognized for /opt/fftw/lib/libfftw3_mpi.la
/opt/fftw/lib/libfftw3_mpi.la: file not recognized: File format not recognized
make[2]: *** [vasp] Error 1
make[2]: Leaving directory `/tmp/vasp.5.4.1/build/std'
cp: cannot stat `vasp': No such file or directory
make[1]: *** [all] Error 1
make[1]: Leaving directory `/tmp/vasp.5.4.1/build/std'
make: *** [std] Error 2
请问这是什么原因,谢谢!

作者
Author:
du19880425    时间: 2018-6-7 20:35
你好,我是在自己的计算机安装了VASP,也有了 incar poscar potcar kpoints 四个文件,但是在CentOs下还是不知道怎么运行。看到上面写的第五条,怎么添加VASP路径,代码是什么,然后怎么运行呢?
作者
Author:
h840473807    时间: 2018-9-9 17:31
du19880425 发表于 2018-6-7 20:35
你好,我是在自己的计算机安装了VASP,也有了 incar poscar potcar kpoints 四个文件,但是在CentOs下还是 ...

用户根目录下的.bashrc里添加
export PATH=vasp绝对目录:$PATH
比如我的就是export PATH=home/hhm/VASP/vasp.5.4.1/bin:$PATH
设置完重新进入终端生效
键入mpirun -np 4 vasp_std >out.log &运行(4核并行)

作者
Author:
abin    时间: 2018-9-10 16:43
sobereva 发表于 2018-3-6 13:55
主流的Linux发行版本没有不稳定的,Ubuntu也绝对不会比CentOS更稳定。专门用做计算服务器的,极少有用U ...

我很赞同这个观点。

Ubuntu是奔着“开箱即用”且能用于办公环境;
当然很多大陆用户是不能理解的, 因为他们认为:
文档必须也只能是doc或者docx
临时发给别人的文档永远叫做“新建Microsoft文档.doc", 或者“新建Microsoft文档.docx"
电子表格必须也只能是Excel 等等。

由于Ubuntu的定位不同,默认可能不会安装编译器。
默认的安装,可是是针对99%的硬件, 图形驱动,打印机驱动都好用。

至于用到专业计算领域,
CentOS, 或者Scientific Linux,是更适合的。

首先,有针对计算使用而创建的安装包合集, 安装的时候,选择软件包模式就可以;
其次,为了考虑到某些工作站的特殊情况,不能访问互联网,而特别提供了软件包合集。
这个时候,可以下载叫做Everything的镜像, 然后在本机yum local DVD就能搞定。
从这个角度而言,CentOS之类的,就更为便捷了。

在我个人看来,
CentOS  Ubuntu的差异, 我能用到的,
一个是rename指令语法不同;
另外当然是yum vs apt-get 了。
其他,都是一样的。 因为我不适用图形界面。

apt-get很好, 但是对于没有互联网连接的工作站或者服务器;
以及某些情况下,独有的网络异常,可能导致某些东西无法apt-get获取。

作者
Author:
hxd_yi    时间: 2018-9-10 23:05
本帖最后由 hxd_yi 于 2018-9-10 23:18 编辑

CentOS是RedHat系的,其上游RedHat经过了严格的稳定性测试。Ubuntu上游是debian,社区维护开发的,单个软件拿出来可能比RedHat好用,但是组合到一起,稳定性没有保证,虽然传说Debian的stable也很stable。但是问题是如果服务器出事了,Debian没人背锅啊!而且Debian硬件支持不好。虽然我是是debian的拥趸,但是还是要实话实说。单机PC使用,debian挺好。各种软件apt一下就行。VMD、VASP都可以编译安装使用。个人学习使用VASP我是用gcc等开源的库完成的安装,只要把官网上的gcc的make.include稍稍改动一下就行。VMD根据sobereva的教程做就行,只是软件不用另外编译安装。
你说debian不能装MS?提示一下:debian的默认的shell是dash,你把默认shell改成bash就没问题了,其他安装同RedHat系。另外Ubuntu最重要的优势是易用性,其入门难度要比其他的linux发行版都低。

作者
Author:
jessenju    时间: 2018-12-22 16:45
你好,感谢分享。我是小白,完全从0开始。请问为什么不能用CentOS7呢?没看明白。我看了看网上,现在已经是7.6了。我正在下载,打算先用虚拟机跑跑看看。
作者
Author:
sobereva    时间: 2018-12-22 23:53
jessenju 发表于 2018-12-22 16:45
你好,感谢分享。我是小白,完全从0开始。请问为什么不能用CentOS7呢?没看明白。我看了看网上,现在已经是 ...

CentOS 7.x绝对能正常编译,倘若一个程序在最主流的CentOS下都没法正常编译,那程序根本就没几个人能用了。
只不过此贴的过程是专门针对6.x而言的

作者
Author:
jessenju    时间: 2018-12-23 20:18
sobereva 发表于 2018-12-22 23:53
CentOS 7.x绝对能正常编译,倘若一个程序在最主流的CentOS下都没法正常编译,那程序根本就没几个人能用了 ...

多谢sob老师解惑,我感觉应该不至于。




欢迎光临 计算化学公社 (http://ccc.keinsci.com/) Powered by Discuz! X3.3