Closed chenzhao-CZ closed 3 years ago
RELION itself should work with OpenMPI 1.10.7. Whether CMake can find it depends on many things and I cannot help. One possibility is to set MPI_C
and MPI_CXX
variables.
See https://cmake.org/cmake/help/latest/module/FindMPI.html. You might have to check the documentation of your older CMake.
@biochem-fan Thank you so much for your reply and I just thought that you might have observed such strange behaviors before. Today I solved the issue by running cmake with the following options (just in case it will be helpful for other people): cmake -DCUDA_ARCH=75 -DFORCE_OWN_FFTW=ON -DFORCE_OWN_FLTK=ON -DMPI_C_COMPILER=/usr/lib64/openmpi/bin/mpicc -DMPI_CXX_COMPILER=/usr/lib64/openmpi/bin/mpicxx .. I guess this will probably be the same as setting MPI_C and MPI_CXX variables.
Again I really appreciate it that you helped me solving this problem!
Dear relion developers,
I am sorry for such a way over-asked question, but I am trying to build relion (3.1.1 or 3.0.8) on a Scientific Linux machine, and encountered an error complaining MPI_C not found when I ran cmake. However, the interesting thing is that, on the same machine in the same terminal window without doing anything extra, this "MPI_C not found" error disappeared when I tried to build relion 2.0.6.
Based on the above observation, I suspect that higher relion versions need a different version of openmpi. Is this true? Or are there any other things that are fundamentally different when compiling higher versions of relion?
For your information, I am using gcc 4.8.5 and openmpi 1.10.7.
I really appreciate it if you have any input!
Sincerely, Chen