This rescoring pipeline relies on GNINA for structure minimization and rescoring. GNINA is not distributed with this repository and must be installed separately.
For all calculations reported in this project, GNINA v1.3.2 was used and is therefore the recommended version for reproducibility.
The GNINA executable should be downloaded into this gnina/ directory, alongside this README.
You can download the GNINA v1.3.2 executable from the official release page:
https://github.com/gnina/gnina/releases/download/v1.3.2/gnina.1.3.2
For convenience, the executable can be downloaded directly using wget:
wget https://github.com/gnina/gnina/releases/download/v1.3.2/gnina.1.3.2After downloading, rename it to gnina, give the binary execute permissions and verify that it runs correctly:
mv gnina.1.3.2 gnina
chmod +x gnina
./gnina -hIf GNINA does not run correctly:
-
Ensure the required CUDA libraries are available. You can inspect missing dependencies using:
ldd ./gnina
These missing dependencies can often be installed via a conda environment. After installing them, ensure the libraries are visible by updating your library path, for example:
export LD_LIBRARY_PATH=$CONDA_PREFIX/lib:$LD_LIBRARY_PATH
Alternatively, a prebuilt Singularity/Apptainer image containing the required CUDA and Python dependencies is available:
apptainer pull oras://ghcr.io/jnelen/gnina_singularity:v1
or:
singularity pull oras://ghcr.io/jnelen/gnina_singularity:v1
Note that this image does not contain the GNINA executable itself; the GNINA binary must still be downloaded separately as described above.
The container can then be used to provide the required runtime environment when launching scripts or GNINA itself, for example:
apptainer exec --nv gnina_singularity_v1.sif ./gnina -hThe
--nvflag is required to expose NVIDIA CUDA libraries inside the container. -
If this does not work, one could try an older GNINA release (e.g. v1.1), which may be more compatible with some systems and should give similar results.