计算化学公社

标题: 求助:最新版本的gromacs 2021.5的安装出错 [打印本页]

作者
Author:
Penson    时间: 2022-2-12 00:26
标题: 求助:最新版本的gromacs 2021.5的安装出错
本帖最后由 Penson 于 2022-2-12 11:16 编辑

请教一下各位大神,系统是Centos 7的,想安装最新版本的gromacs 2021.5,但按照官网教程到cmake这一步,出现了以下错误。

(, 下载次数 Times of downloads: 5)

要求cmake版本大于3.13,还特意把cmake更新到了3.16的,结果还是出错。

(, 下载次数 Times of downloads: 6)

查了一下,说错误似乎是因为gcc版本过低导致的,低版本不支持c++17。但是我的gcc已经是8.3.0版本了,还会太低吗?实在蒙圈,请各位不吝赐教!!!


(, 下载次数 Times of downloads: 13)

作者
Author:
Daniel_Arndt    时间: 2022-2-12 02:10
讲一个我以前遇到的事情,CentOS 7中“strings /lib64/libstdc++.so.6 | grep CXXABI”是没有“CXXABI_1.3.9”的。CentOS 7默认的gcc版本是4.8.5,而“CXXABI_1.3.9”是从5.1开始的。我一开始以为安装了devtoolset-7-gcc、devtoolset-7-gcc-c++(对应的是gcc 7.2.1)后,就会有“CXXABI_1.3.9”。结果还是没有。我猜测可能是CentOS开发者对兼容性的考虑导致了这一现象。

如果你是用的CentOS 8的话,我个人建议先试试看不同的devtoolset,不大耗时间,只要记得编译之前“scl enable devtoolset-N bash”(里面的“N”要替换成相应的数字)。不奏效的话,就得手动编译gcc了。可以参考 https://mp.weixin.qq.com/s?__biz ... 44b078a735fabbfdeb8 。流程就是先编译gmp、mpfr、mpc(要是个人在意循环优化的话,还要编译isl),然后编译gcc。难点在于针对你要的gcc版本,找到合适的gmp、mpfr、mpc版本,这也是最耗时的部分。
作者
Author:
Daniel_Arndt    时间: 2022-2-12 02:15
友情提醒一下,安装Linux发行版时把语言设置成中文的话,对搞计算的人而言,容易在后面吃亏,尤其是当你发现英文版只需要把报错输出中的一部分谷歌一下就可以得到不少有价值的信息时。
作者
Author:
sobereva    时间: 2022-2-12 03:14
说明当前是什么系统具体什么版本,装完后对cmake和gcc是否动了什么手脚
作者
Author:
Penson    时间: 2022-2-12 10:32
Daniel_Arndt 发表于 2022-2-12 02:15
友情提醒一下,安装Linux发行版时把语言设置成中文的话,对搞计算的人而言,容易在后面吃亏,尤其是当你发 ...

服务器买的时候商家帮装的,也不清楚是中文的,如果语言可以设置回英文的就好了
作者
Author:
Penson    时间: 2022-2-12 11:20
Daniel_Arndt 发表于 2022-2-12 02:10
讲一个我以前遇到的事情,CentOS 7中“strings /lib64/libstdc++.so.6 | grep CXXABI”是没有“CXXABI_1.3. ...

今早确实发现,默认给我调用的是4.8.5版本的,问了思想家公社群,有老师说需要指定cmake -DCMAKE_CXX_COMPILER=g++  -DCMAKE_C_COMPILER=gcc。

尝试后确实,调用的版本更新了,这一步就过去了

作者
Author:
Penson    时间: 2022-2-12 11:22
sobereva 发表于 2022-2-12 03:14
说明当前是什么系统具体什么版本,装完后对cmake和gcc是否动了什么手脚

系统版本是centos7的,帖子已经加上。gcc和cmake都是自己手动安装的
作者
Author:
snljty    时间: 2022-2-12 11:41
Penson 发表于 2022-2-12 11:20
今早确实发现,默认给我调用的是4.8.5版本的,问了思想家公社群,有老师说需要指定cmake -DCMAKE_CXX_COM ...

CC=某个gcc路径 FC=某个gfortran路径 CXX=某个g++路径 cmake .. xxxxxxxx一般是这个用法,或者先export前面三个环境变量,再跑cmake。
作者
Author:
snljty    时间: 2022-2-12 11:42
Penson 发表于 2022-2-12 10:32
服务器买的时候商家帮装的,也不清楚是中文的,如果语言可以设置回英文的就好了

如果只是gcc报错的这个语言问题,我记得只要export LANG=en_US.UTF-8即可解决。系统显示语言也是可以改的。


作者
Author:
hebrewsnabla    时间: 2022-2-12 13:23
gcc -V显示8.3.0而cmake仍然使用4.8.5的原因是cmake认的是cc而不是gcc。自行安装gcc并修改环境变量只能改变gcc的路径,不能改变cc。

所以解决办法就是如8楼所说。实际上,只要环境变量正确,不写完整路径,只写 CC=gcc FC=gfortran CXX=g++ 也是可以的。(用6楼的写法也可以)(看起来是叠床架屋行为,但是cmake就是这样的……)




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