Rosetta安装教程

作者: ROSETTA研习社 | 来源:发表于2019-01-28 23:36 被阅读354次

    本文均在CentOS7(release 7.6.1810)版本下进行过的测试

    我推荐使用Clang3.4.2的编译方法。
    update 2019.05.06
    更多内容可以关注 Rosetta中文社区/知乎-Rosetta研习社专栏

    Rosetta简介

    Rosetta是计算结构生物学皇冠上的一颗璀璨明珠,也是人类通往蛋白设计的巴别塔。整个套件内设有蛋白质结构建模和分析的各种采样算法和打分函数,涉及从头蛋白质设计、酶设计、分子对接以及生物大分子和大分子复合物的结构预测等领域。

    Rosetta下载

    Rosetta的发布有两种主要的形式: 稳定的正式版本(Numbered Release)和每周发行的版本(Weekly Release),由于每周发行版本会修复bug和新增最新功能,强烈建议下载此版本的源码。

    Go to: https://www.rosettacommons.org/software/academic/

    警告须知
    为解决Rosetta下载问题,此处资源仅供学术和非盈利组织学习使用,下载后请24小时内删除,不得肆意传播,否则后果自负!此处发布的代码并非稳定版本,而是Weekly Release,可能存在bugs,切勿用于生产环境,Rosetta/PyRosetta有商业化稳定版本,相关使用者请购置授权。

    PyRosetta: 链接:https://pan.baidu.com/s/1YUm3JZbxSi9Urwiw--1dJw 密码:09bt

    Rosetta: 链接:https://pan.baidu.com/s/1tZcZ5mmXCALdffDSCm2fkw 密码:z5oh

    Rosetta的安装

    最新的Rosetta安装依赖OPENMPI以及BOOST.

    1.BOOST与其他开发环境

    yum install boost-devel libstdc++ zlib zlib-devel bzip2
    

    2. 编译器的选择

    使用GCC编译器

    最新的Rosetta代码编译依赖完整的C++11特性,因此我们需要更新系统自带的gcc编译器。如果使用gcc-8.21, 完全可以编译通过Rosetta,但是无法自己构建PyRosetta,只能够安装Release版本的PyRosetta

    sudo yum install centos-release-scl
    sudo yum install devtoolset-8
    scl enable devtoolset-8 zsh
    

    使用Clang编译器

    版本Clang 3.4.2, 此外你需要额外编译clang版本的openmpi。clang3.4完全兼容C++11 regex。推荐使用!并且更加灵活和快速。

    yum install epel-release
    yum install clang clang-devel clang-analyzer
    

    3.OPENMPI的编译与安装

    GCC编译环境:

    yum install openmpi openmpi-devel -y
    echo "export PATH=/usr/lib64/openmpi/bin/:${PATH}" >> ~/.zshrc
    

    Clang编译环境:

    #自行编译的方法:clang.并创建软连接。
    cd openmpi-3.1.0/
    ./configure CC=clang CXX=clang++ --prefix=/usr/local/openmpi_clang
    make -j 40
    make install
    ln -s /usr/local/openmpi_clang/bin/mpirun /usr/local/bin/mpiclang
    

    运行时应该使用mpiclang,而不是mpirun(gcc),避免影响其他gcc编译软件的并行。

    4.Rosetta的编译与安装

    环境变量配置:

    #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个核编译为例:

    cd $ROSETTA/main/source/
    
    # 使用gcc编译:
    ./scons.py -j 40 mode=release bin extras=mpi #gcc
    
    # 使用clang编译:
    export PATH=/usr/local/openmpi_clang/bin:${PATH} # 暂时输出mpicc_clang
    ./scons.py -j 40 mode=release bin extras=mpi cxx=clang cxx_ver=3.4
    

    测试运行

    antibody.mpi.linuxgccrelease # gcc
    antibody.mpi.linuxclangrelease # clang
    

    5. PyRosetta的安装编译

    5.1 Release包编译

    一般不会出错,简单方便,而且更新的速度更快。

    下载地址:

    http://www.pyrosetta.org/dow

    cd /path/PyRosetta4.Release.python27.linux.release-215/setup
    python setup.py install
    

    Username: levinthal

    Password: paradox

    5.2 源代码编译
    • 首先你要使用Clang-4.3.2编译好的Rosetta_bundel
    • Clang-4.3.2
    # 必须全部安装!
    yum install libstdc++-devel python-devel
    conda install python-blosc
    
    # 安装ninja
    git clone git://github.com/ninja-build/ninja.git && cd ninja
    ./configure.py --bootstrap
    cp ./ninja /usr/local/bin
    
    # 安装cmake
    wget https://github.com/Kitware/CMake/releases/download/v3.14.0/cmake-3.14.0.tar.gz
    tar zxvf cmake-3.14.0.tar.gz
    cd cmake-3.14.0
    ./bootstrap
    make -j 40
    make install
    

    Building:

    • --serialization 编译串行的PyRosetta
    • --multi-threaded 编译并行的PyRosetta
    # Build pyrosetta-bindings
    cd $ROSETTA/main/source/src/python/PyRosetta
    
    # 系统自带anaconda编译时不需要指定python lib位置:
    python build.py -j 30 --create-package /mnt/sdd/software/pyrosetta_serialization --serialization --compiler clang 
    
    cd /mnt/sdd/software/pyrosetta_serialization/setup
    python setup.py install
    
    # anaconda虚拟环境编译时需要指定python3 lib的位置: 如下
    python build.py -j 30 --create-package /mnt/sdd/software/pyrosetta_serialization3 --serialization --compiler clang --python-lib  /root/anaconda2/envs/python3/lib/python3.6
    
    cd /mnt/sdd/software/pyrosetta_serialization3/setup
    python setup.py install
    

    注意编译过程中需要海量的内存(>=64GB for -j 24)。

    相关文章

      网友评论

        本文标题:Rosetta安装教程

        本文链接:https://www.haomeiwen.com/subject/sthtsqtx.html