|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Good Morning.
I just downloaded the most recent available version of CHARMM about 10 minutes ago.
I followed these instructions EXACTLY as presented to me for downloading CHARMM:
./configure cd build/cmake make make install
The charmm executable will be created in the directory '../../bin/'
and this is the error I received:
[ 61%] Building Fortran object CMakeFiles/charmm_fortran.dir/openmm_api.F90.o OpenMMFortranModule.f90:3181:13:
Error: Unclassifiable statement at (1) OpenMMFortranModule.f90:3178:61:
Error: Symbol 'result' at (1) has no IMPLICIT type OpenMMFortranModule.f90:3183:60:
Error: Symbol 'count' at (1) has no IMPLICIT type OpenMMFortranModule.f90:3794:59:
Error: Symbol 'result' at (1) has no IMPLICIT type OpenMMGBSWFortranModule.f90:22:9:
Fatal Error: Cannot open module file 'openmm.mod' for reading at (1): No such file or directory compilation terminated. make[2]: *** [CMakeFiles/charmm_fortran.dir/build.make:9419: CMakeFiles/charmm_fortran.dir/openmm_api.F90.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:187: CMakeFiles/charmm_fortran.dir/all] Error 2 make: *** [Makefile:136: all] Error 2
I want to emphasize that this is a pristine, first compilation. By that, I mean that there were no previous compiles, i.e the directory is new and untouched, after the command: 'tar -xvzf charmm.tar.gz
Can you help me with this?
Regards,
Angelo
|
|
|
|
Joined: Sep 2003
Posts: 8,659 Likes: 26
Forum Member
|
Forum Member
Joined: Sep 2003
Posts: 8,659 Likes: 26 |
IMHO, the openmm feature should be optional, as it requires some additional user setup prior to compiling; see the openmm info file in the documentation.
OTOH, you can skip that feature by including --without-openmm as an option to configure.
As often happens, the documentation is only approximately correct.
Rick Venable computational chemist
|
|
|
|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Yeah! After the initial anxiety subsided, I discovered just that. Everything is fine now. I live in NYC and will talk to my therapist about reacting suddenly without careful consideration of my actions.
OTOH, I am so happy that I can get the latest and greatest version of CHARMM for free.
I have an account at NERSC, and their cluster runs only GPUs at present. I will take this version of CHARMM and try to compile it with openmm. Compiling with the option --without-openmm works, but now I want to compile an OpenMM version of CHARMM utilizing the GPUs at NERSC. What happens then? Do I get the same error above? Any comments?
Thanks again.
Angelo
|
|
|
|
Joined: Apr 2013
Posts: 37
Forum Member
|
Forum Member
Joined: Apr 2013
Posts: 37 |
If you can start from scratch and attach the full output of the configure script as a text file, then we can see what types and versions of compiler, openmm, etc. that you're using.
What compilers are you using and what are their versions?
What version of OpenMM are you using?
What version of CUDA are you using?
What version of CMake are you using?
I think this is the most relevant info.
|
|
|
|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Hello Josh,
I will get back to you on this. I will use the NERSC system, and then append the results of the configure. So far I was using my laptop that doesn't have GPUs.
Thanks again.
Angelo
|
|
|
|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Hello,
I am trying to compile the most recent free version of CHARMM on the NERSC cluster. I am using the perlmutter cluster which (for now) uses only GPUs. I installed OpenMM 7.7 using a conda install. During the configure of the free CHARMM code, I can now point to the plugins from the conda install. There are all these wonderful newer versions of the cuda toolkits available: cudatoolkit/11.0, cudatoolkit/11.2, cudatoolkit/11.5.
No matter what I try, this is the error I am getting:
OpenMMFortranModule.f90:4527:13:
Error: Unclassifiable statement at (1) OpenMMFortranModule.f90:5619:61:
Error: Symbol 'result' at (1) has no IMPLICIT type OpenMMFortranModule.f90:5624:60:
Error: Symbol 'count' at (1) has no IMPLICIT type OpenMMFortranModule.f90:4524:59:
Error: Symbol 'result' at (1) has no IMPLICIT type OpenMMGBSWFortranModule.f90:22:9:
Fatal Error: Cannot open module file 'openmm.mod' for reading at (1): No such file or directory compilation terminated. make[2]: *** [CMakeFiles/charmm_fortran.dir/build.make:9419: CMakeFiles/charmm_fortran.dir/openmm_api.F90.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:227: CMakeFiles/charmm_fortran.dir/all] Error 2 make: *** [Makefile:136: all] Error 2
Comments:
1.There is nothing wrong with the code. The compiler doesn't know what it's talking about! Help! Help! 2. I am frustrated by this. I think it has something to do with the CRAY setup. 3. One might ask the following: well, you successfully installed OpenMM 7.7, and the GPU code works really well, why are you playing around trying to compile the mostly Fortran and C code? I want to have a sense of continuity, and I like CHARMM. 4.As I stated above, I used conda to install OpenMM 7.7. I think the conda concept is completely antithetical to the idea of using the Linux operating system or any Unix operating system. After conda installation (via Anaconda), I find that it interferes with commands and software involving python. Python commands are routed through bash or csh to the anaconda directory which is really a parallel operating system to the Linux operating system. My Linux debian operating system has python 11 installed, but this is what I get with anaconda installed:
/home/rossi/anaconda3/lib/python3.7/__pycache__/rlcompleter.cpython-37.pyc matches /home/rossi/anaconda3/lib/python3.7/rlcompleter.py
that is a lower level of python than I expected. Yeah, I know I can comment the lines in the .bashrc shell, but really I am older now and sometimes forget.
No one can serve two operating systems, nor can one expect two versions of python.
Regards,
Angelo
|
|
|
|
Joined: Apr 2013
Posts: 37
Forum Member
|
Forum Member
Joined: Apr 2013
Posts: 37 |
There is a bug in the file OpenMMFortranModule.f90 for OpenMM 7.7.0
If you can find this file under your ~/anaconda3 directory, you can edit it.
All of the 3 instances of 'long long' need to be replaced with 'integer(8)' I think.
For me, the file I needed to change lives in ~/miniconda3/pkgs/openmm-7.7.0-py39h9d5585d_0_khronos/include
I found it by doing find -L . -name OpenMMFortranModule.f90 in my home directory.
WARNING: conda may not be happy that you changed a file by hand. You may get messages when you update, install, or uninstall software in the future.
|
|
|
|
Joined: Mar 2005
Posts: 88
Forum Member
|
OP
Forum Member
Joined: Mar 2005
Posts: 88 |
Dear Josh,
Thanks so much for your reply.
I am confused.
After I installed anaconda, I did something like the following:
conda create -n myenv
conda activate myenv
conda install -c conda-forge openmm.
After that I was good-to-go. I didn't notice that any compilation happened. When I set up an input file for openmm, it worked both on my laptop (CPU) and NERSC (GPU)
I thought that all the libraries and were put in place and ready to go by the conda install command, The libraries and plugins were place in appropriate directories, but that's all.
How does the OpenMMFortranModule.f90 file fit into this? There is such a file in the free CHARMM source code. Can you explain the connection?
Thanks so much.
Regards,
Angelo
Last edited by rossi; 06/01/22 06:57 PM.
|
|
|
|
|