【1.1.1】centos8安装Rosetta

软件包下载地址: http://bbs.keinsci.com/thread-12685-1-1.html

一、安装流程

# Rosetta依赖OPENMPI以及BOOST
# Boost与其他开发环境
[root@localhost user]# yum install boost-devel libstdc++ zlib zlib-devel bzip2

# 安装openmpi
[root@localhost user]# yum install openmpi openmpi-devel -y

[root@localhost user]# vi ~/.bashrc
#Rosetta
export ROSETTA=/mnt/sdd/software/rosetta_src_201x.xx.xxxxxx_bundle
export ROSETTA3_DB=$ROSETTA/main/database
export ROSETTA_BIN=$ROSETTA/main/source/bin
export PATH=$PATH:$ROSETTA_BIN
export LD_LIBRARY_PATH=$ROSETTA/main/source/bin:$LD_LIBRARY_PATH

# 编译多线程rosetta, 此处调用40个核为例

[root@localhost source]# ./scons.py -j 40 mode=release bin extras=mpi


# 测试运行
[root@localhost rosetta_src_2019.12.60667_bundle]# main/source/bin/antibody.mpi.linuxgccrelease

File: src/apps/public/antibody/antibody.cc:203
[ ERROR ] UtilityExitException
ERROR: Error: no input sequences were specified!
#不知道是否正确装上rosetta

其实这时已经安装好Rosetta了

四、报错

在执行多线程编译rosetta时执行:

  python scons.py bin mode=release extras=mpi -j8 编译安装rosetta

会出现错误sh: mpiCC command not found导致编译终止。

解决方法:

1.首先确定已安装openmpi,不管你是安到/usr/local还是自己定义的安装目录,都要确定已经将openmpi的bin目录和lib目录放到环境变量里(我的安装目录是服务器上我的主目录下的Programs文件夹下的openmpi里)。环境变量设置如下:

[sam@c01 source]$ which mpicc
/usr/lib64/openmpi/bin/mpicc

export PATH=/usr/lib64/openmpi/bin:$PATH
export LD_LIBRARY_PATH=/usr/lib64/openmpi/lib:$LD_LIBRARY_PATH

2.在添加完环境变量后,问题依旧,便遵循以下操作,至少对我来说是管用。

[cao@c01 source]$ pwd
/data4/modelling_softwares/rosetta.source.release-314/main/source

cp tools/build/site.settings.topsail tools/build/site.settings
(原理可能是为rosetta指定mpi的目录)

然后再次运行

python scons.py bin mode=release extras=mpi -j8,

你就会惊奇的发现竟然能编译了,哈哈。

3.KeyError: ‘INCLUDE’

解决办法:

注释# “include_path” : os.environ[“INCLUDE”].split(":"), 行。 问题解决

vim tools/build/site.settings

31 settings = {
32     "site" : {
33                     "prepends" : {
34             "program_path" : os.environ["PATH"].split(":"),
35             #"include_path" : os.environ["INCLUDE"].split(":"),
36             "library_path" : os.environ["LD_LIBRARY_PATH"].split(":"),
37         },
38         "appends" : {
39         },
40         "overrides" : {
41         },
42         "removes" : {
43         },
44     },
45 }

参考资料

这里是一个广告位,,感兴趣的都可以发邮件聊聊:tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn