Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plugin-openMM version compatibilities and CMakeLists.txt #79

Open
des2037 opened this issue Feb 4, 2024 · 2 comments
Open

plugin-openMM version compatibilities and CMakeLists.txt #79

des2037 opened this issue Feb 4, 2024 · 2 comments

Comments

@des2037
Copy link

des2037 commented Feb 4, 2024

Hi openMM-plumed devs,

I just compiled the openmm-plumed plugin on Summit (Oak Ridge), and I made some observations that I thought might be helpful to the community.

  1. The openmm-plumed plugin version 2.0 is NOT compatible with earlier versions of openMM (I tested v7.5.0, v7.7.0, v8.0.0). This is because v2.0 of the plugin requires openmmapi/include/openmm/internal/CustomCPPForceImpl.h, which wasn't introduced into openMM until rather recently. Taking advantage of CustomCPPForceImpl is described in the plugin release notes, but sadly I didn't realize CustomCPPForceImpl isn't available in earlier openMM versions. It might be helpful to add a remark regarding version compatibilities to the install notes; i.e., if using openMM < v8.1.0 use v1.0 of plugin.

  2. Odd behavior: in my hands, if CMAKE_INSTALL_PREFIX is set to be identical to OPENMM_DIR, the files weren't copied in make install. However, if I pointed to a new subdirectory (that doesn't exist until compile), e.g., ${OPENMM_DIR}/my_plumed_files, then the files are indeed copied.

  3. As others have observed, I did indeed need to add ${OPENMM_DIR}/my_plumed_files/lib to $LD_LIBRARY_PATH

  4. I had to edit CMakeLists.txt, changing this line:
    INCLUDE_DIRECTORIES("${PLUMED_INCLUDE_DIR}")

to

INCLUDE_DIRECTORIES("${PLUMED_INCLUDE_DIR}" "${PLUMED_INCLUDE_DIR}/plumed")

Otherwise, it would miss header files (maybe this is resolved in plugin v2.0)

Anyway, I hope this helps other unlucky folks who can't use the conda install (due to unsupported hardware, e.g., POWER9). 🙂

@RaulPPelaez
Copy link
Contributor

Hi, thanks for taking the time to write this!

  1. I added a note to the README.
  2. This is strange and probably hints at some underying issue/missconfiguration. See here the script that we use to compile the conda-forge package for this plugin https://github.com/conda-forge/openmm-plumed-feedstock/blob/main/recipe/build.sh . In there, OPENMM_DIR==CMAKE_INSTALL_PREFIX.
  3. Unless I am missing something, this happens because you are installing to a non-standard library. Install to $CONDA_PREFIX (or $OPENMM_DIR, or /usr/local/) and the library should go to a place where ldd looks for it.
  4. In the aforementioned build script PLUMED_INCLUDE_DIR=${PREFIX}/include/plumed

@peastman
Copy link
Member

peastman commented Feb 7, 2024

What directory did you try to install to? Might it have been a permissions issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants