How to reliably compile on Linux Mint 22?
So far I have never succeeded to succesfully compile PyMol on any system. Here I tried it again on Linux Mint 22, following the description here: https://pymolwiki.org/index.php/Linux_Install.
There are some warnings but no red errors, and compilation finishes without any obvious issues. Then when I try to start PyMOL I get:
~/pymol-open-source-build/bin$ ./pymol
/usr/bin/python3: can't open file '/usr/local/lib/python3.12/dist-packages/pymol/__init__.py': [Errno 2] No such file or directory
I am aware there is a PyMOL 2.5 deb package but I found that this version crashed easily for non-obvious reasons.
Please advise on how to resolve this. Thanks/Evert
Apologies, the wiki page still needs to be updated, and I'm extremely behind on updating the info here.
https://github.com/schrodinger/pymol-open-source/blob/9b9cd6fb7ba8df68863fa03f0efa0c7270aec9ad/INSTALL#L52-L56 is the most to date instructions that don't call setup.py directly and uses pip instead. Also, see our linux CI for a working example: https://github.com/schrodinger/pymol-open-source/blob/9b9cd6fb7ba8df68863fa03f0efa0c7270aec9ad/.github/workflows/build.yml#L45-L48
pip install .
Should I run this just in the cloned repo, or what?
On fedora, I usually do the following:
sudo dnf install -y cmake gcc-c++ glew-devel libpng-devel freetype-devel glm-devel python3-pyqt6 python3-devel
git clone https://github.com/schrodinger/pymol-open-source
cd pymol-open-source
pip install . --config-settings libxml=false --config-settings use-msgpackc=no --config-settings vmd-plugins=false
However when I tried it today I got the following error (which may be related to nvidia, but I'm not sure):
Detected OpenGL version 4.6. Shaders available.
Detected GLSL version 4.60.
OpenGL graphics engine:
GL_VENDOR: Intel
GL_RENDERER: Mesa Intel(R) Graphics (ADL GT2)
GL_VERSION: 4.6 (Compatibility Profile) Mesa 24.3.4
Detected 16 CPU cores. Enabled multithreaded rendering.
GL_ERROR : 0x0506 GenericBuffer::genBuffer failed
terminate called without an active exception
Aborted (core dumped)