########################################### Building Tinker & Tinker-OpenMM Using CMake ########################################### The Tinker and Tinker-OpenMM packages can be built using the CMake compilation utility. CMake works on Linux, macOS and Windows. It requires the pkg-config and cmake-data packages, as well as cmake. "cmake" is a command-line utility, and can be replaced in step 3 by "ccmake" for a text-based UI or cmake-gui for a graphical frontend. Note that before building Tinker, the FFTW libraries must be built or installed. These libraries can be built following the instructions in the file ../fftw/0README. Alternatively, are libraries are installed on Ubuntu Linux via the command "sudo apt-get install libfftw3-dev". If multiple threaded FFTW libraries are installed, the linked version can be specified in step 3 with the flag "-DFFTW_THREAD_TYPE=omp". To change where the Tinker executables are installed, use the flag "-DCMAKE_INSTALL_PREFIX=/path/to/install" in step 3. This is useful in situations where the user may not have root privileges (e.g. on a computer cluster). To build Tinker with cmake, issue the following commands: (1) cd Tinker [i.e., the top-level directory] (2) mkdir build && cd build (3) cmake ../cmake (4) make -j4 [replace 4 with # of processes to use] (5) make install A CMake module is also included here to build Tinker-OpenMM with the OpenMM libraries and CUDA. To turn on this capability, use the flag "-DTINKER_OPENMM=ON". This will try to find the OpenMM libraries in the default location (/usr/local/openmm), or in the location set by the environment variable OPENMM_PLUGIN_DIR, or via the flag "-DOPENMM_DIR=/path/to/openmm". You do not need to build the base version of Tinker first, as it will compiled automatically. To build Tinker with OpenMM libraries, issue the following commands: (1) cd Tinker [i.e., the top-level directory] (2) mkdir build && cd build (3) cmake ../cmake -DTINKER_OPENMM=ON -DOPENMM_DIR=/path/to/openmm (4) make -j4 [replace 4 with # of processes to use] (5) make install