本家様 http://pymol.org/
シュレーディンガー社様から販売されております. 一方でそのオープンソース版が存在していてここではそのオープンソース版を作ってみました.
https://github.com/schrodinger/pymol-open-source
有償版PyMOLはopen source版よりも機能が強化されてます
windowsOS向けopen source版は試してないです..
ver3.0になったので改めて作ってみた.
(RockyLinux9)
dnf groupinstall "Development Tools" -y
dnf install epel-release -y
dnf --enablerepo=devel install python3-numpy cmake netcdf-devel glm-devel python-devel glew-devel libpng-devel libxml2-devel freetype-devel python3-qt5 -y
(RockyLinux9)
mkdir -p /apps/src && cd /apps/src
git clone https://github.com/schrodinger/pymol-open-source
cd pymol-open-source/
pip install --prefix /apps/PyMOL .
/apps/modulefiles/PyMOL
#%Module1.0
set root /apps/PyMOL
prepend-path PATH $root/bin
prepend-path PYTHONPATH $root/lib64/python3.9/site-packages
以上でrockylinux9向けには出来た.
ver3.0から pthon3.9以上が必要となりました.
rockylinux8のpythonは 3.6、python39もありますが、python3-qt5がpython3.6ベースなので無理. 「--glut」で逃げれるけど構築が複雑だった..
なので condaで python3.9 以上の環境を作ってそこでpymolを作ってみました.
condaで仮想環境を作りpymolをコンパイルします。
(RockyLinux8の下拵え)
dnf groupinstall "Development Tools" -y
dnf install epel-release -y
dnf install --enablerepo=devel,epel cmake netcdf-devel glew-devel libpng-devel libxml2-devel freetype-devel -y
dnf install xcb-util-wm xcb-util-image xcb-util-keysyms xcb-util-renderutil -y
dnf install https://dl.rockylinux.org/pub/rocky/9/devel/x86_64/os/Packages/g/glm-devel-0.9.9.8-3.el9.noarch.rpm
pyenv/anacondaを用意します. miniforgeでもいいけど
git clone https://github.com/yyuu/pyenv.git /apps/pyenv
export PYENV_ROOT=/apps/pyenv
export PATH=$PYENV_ROOT/bin:$PATH
pyenv install anaconda3-2024.06-1
source /apps/pyenv/versions/anaconda3-2024.06-1/etc/profile.d/conda.sh
既にpyenv/anaconda環境があるのなら下記のみを実施します
source /apps/pyenv/versions/anaconda3-2024.06-1/etc/profile.d/conda.sh
次にpymol向けの仮想環境を作ります
[root@rockylinux ~]# conda create -n pymol-open-source python numpy qt pyqt
[root@rockylinux ~]# conda activate pymol-open-source
(pymol-open-source) [root@rockylinux ~]# cd /apps/src
(pymol-open-source) [root@rockylinux src]# git clone https://github.com/schrodinger/pymol-open-source
(pymol-open-source) [root@rockylinux src]# cd pymol-open-source
(pymol-open-source) [root@rockylinux pymol-open-source]# pip install --prefix=/apps/PyMOL .
:
Successfully installed pymol-3.1.0a0
:
(pymol-open-source) [root@rockylinux pymol-open-source]# conda deactivate
[root@rockylinux pymol-open-source]#
EnvironmentModules は下記のようにします
/apps/modulefiles/PyMOL
#%Module1.0
prepend-path PATH /apps/PyMOL/bin
prepend-path PYTHONPATH /apps/PyMOL/lib/python3.12/site-packages
これで「module use /apps/modulefiles」「module load PyMOL」として「pymol」で起動します
起動画面はこんな感じ. versionは「3.1.0a0」
dnf install epel-release -y
dnf install xcb-util-wm xcb-util-image xcb-util-keysyms xcb-util-renderutil -y
dnf install --enablerepo=epel,devel glew-devel netcdf-devel freetype-devel libxml2-devel libpng-devel cmake -y
dnf remove glm-devel -y
dnf install https://dl.rockylinux.org/pub/rocky/9/devel/x86_64/os/Packages/g/glm-devel-0.9.9.8-3.el9.noarch.rpm -y
dnf --enablerepo=devel install python39-devel python39-numpy -y
python3.9 -m pip install --upgrade pip
pip3.9 install pyqt5
cd /apps/src
git clone https://github.com/schrodinger/pymol-open-source
cd pymol-open-source/
pip3.9 install --prefix=/apps/PyMOL .
/apps/modulefiles/PyMOL
#%Module1.0
prepend-path PATH /apps/PyMOL/bin
prepend-path PYTHONPATH /apps/PyMOL/lib64/python3.9/site-packages
基本rockylinux8のようにconda仮想環境でpymolを用意します
(centos7なら)
yum install centos-release-scl-rh epel-release
yum install devtoolset-11
yum install --enablerepo=epel glew-devel netcdf-devel libpng-devel libxml2-devel freetype-devel cmake
yum install xcb-util-wm xcb-util-image xcb-util-keysyms xcb-util-renderutil
source scl_source enable devtoolset-11
git clone https://github.com/g-truc/glm
cd glm
git checkout 0.9.9.8
cp -r glm /usr/include
alternatives --install /usr/bin/cmake cmake /usr/bin/cmake3 1 <-- 「cmake」が必要なのでcmake3をcmakeにしてみた
OSパッケージ側はこれでokで、次にcondaになります
[root@centos7 ~]# conda create -n pymol-open-source python numpy qt pyqt
[root@centos7 ~]# conda activate pymol-open-source
(pymol-open-source) [root@rockylinux ~]# cd /apps/src
(pymol-open-source) [root@centos7 src]# git clone https://github.com/schrodinger/pymol-open-source
(pymol-open-source) [root@centos7 src]# cd pymol-open-source
(pymol-open-source) [root@centos7 pymol-open-source]# pip install .
:
Successfully installed pymol-3.1.0a0
:
(pymol-open-source) [root@centos7 pymol-open-source]# conda deactivate
[root@centos7 pymol-open-source]#
EnvironmentModules は rockylinux8 と同じ
(ubuntu24.04)
root@ubuntu24:~# grep PRETTY_NAME /etc/os-release
PRETTY_NAME="Ubuntu 24.04.1 LTS"
root@ubuntu24:~# apt install cmake git libnetcdf-dev libglm-dev libglew-dev libpng-dev libfreetype-dev python3-numpy python3-pyqt5.qtopengl python3-pip environment-modules
root@ubuntu24:~# cd /apps/src
root@ubuntu24:/apps/src# git clone https://github.com/schrodinger/pymol-open-source
root@ubuntu24:/apps/src# cd pymol-open-source
root@ubuntu24:/apps/src/pymol-open-source# pip install --prefix=/apps/PyMOL .
root@ubuntu24:/apps/src/pymol-open-source# cd
root@ubuntu24:~# vi /apps/modulefiles/PyMOL
#%Module1.0
prepend-path PATH /apps/PyMOL/local/bin
prepend-path PYTHONPATH /apps/PyMOL/local/lib/python3.12/dist-packages
root@ubuntu24:~#
なぜか local が中間に入ってしまう...
みかんせい
(ubuntu22.04)
root@ubuntu22:~# grep PRETTY_NAME /etc/os-release
PRETTY_NAME="Ubuntu 22.04.3 LTS"
root@ubuntu22:~# apt install cmake git libnetcdf-dev libglm-dev libglew-dev libpng-dev libfreetype-dev python3-numpy python3-pyqt5.qtopengl python3-pip environment-modules libxml2-dev
root@ubuntu22:~# cd /apps/src
root@ubuntu22:/apps/src# git clone https://github.com/schrodinger/pymol-open-source
root@ubuntu22:/apps/src# cd pymol-open-source
root@ubuntu22:/apps/src/pymol-open-source# pip install --prefix=/apps/PyMOL .
root@ubuntu22:/apps/src/pymol-open-source# cd
root@ubuntu24:~# vi /apps/modulefiles/PyMOL
#%Module1.0
prepend-path PATH /apps/PyMOL/local/bin
prepend-path PYTHONPATH /apps/PyMOL/local/lib/python3.10/dist-packages
root@ubuntu24:~#