• Grimme的xtb程序的編譯方法

    Grimme的xtb程序的編譯方法

    文/Sobereva@北京科音  2019-Nov-21


    之前筆者在《將Gaussian與Grimme的xtb程序聯用搜索過渡態、產生IRC、做振動分析》(http://www.shanxitv.org/421)中已經對xtb程序的基本情況進行了介紹,也說明了安裝方法。通常直接用預編譯版的xtb就夠了,但有時候為實現特殊目的需要改代碼,這就需要自己編譯了。本文介紹一下在CentOS 7.4下的編譯。機子里已經裝了ifort+icc 19.0.1.144編譯器。xtb用的是https://github.com/grimme-lab/xtb/releases下載的6.2.1版。對于其它操作系統、其它版本xtb的情況請根據實際提示隨機應變。

    先安裝Python 3:
    yum install python3
    這會把pip3也裝上。

    之后運行以下命令把meson和ninja都裝上,這倆是干什么的參考《DFT-D4色散校正的簡介與使用》(http://www.shanxitv.org/464)里的說明。
    pip3 install meson
    yum install ninja-build
    (注:雖然yum install meson也可以裝meson,但源里面的版本太老,而xtb 6.2.1要求必須版本>=0.49,因此用pip3來裝)

    將xtb的源代碼包解壓,打開此目錄下的meson.build,在
    ## ========================================== ##
    ## LIBRARIES
    部分的前頭一行加上
    add_project_link_arguments('-L/usr/lib/x86_64-redhat-linux6E/lib64/', language: 'c')
    否則在鏈接可執行文件時可能會提示找不到庫文件。

    之后在xtb目錄下運行
    export FC=ifort CC=icc CXX=icpc
    meson setup build_intel --optimization=2
    ninja -C build_intel

    編譯過程不到10分鐘,中途如果卡著不動,屏幕上提示dep hack,不要著急,慢慢等著即可。

    編譯完了之后在build_intel目錄下就會看到xtb可執行文件。將之挪到xtb可執行文件包里覆蓋原有的可執行文件即可。

    久久精品国产99久久香蕉