Open lwan86 opened 3 years ago
I also tried explicitly specifying the MPI_ROOT in cmake command, still couldn't find it
It seems the MPI Fortran cannot be found by cmake.
-- Found MPI_C: /opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/lib/release/libmpi.so (found version "3.1") -- Found MPI_CXX: /opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/lib/libmpicxx.so (found version "3.1") -- Could NOT find MPI_Fortran (missing: MPI_Fortran_WORKS) -- Could NOT find MPI (missing: MPI_Fortran_FOUND Fortran) (found version "3.1")
Can you try explicitly setting the compiler vars:
$ export CC=icc CXX=icpc FC=ifort
$ cmake ../../source/master
-- The C compiler identification is Intel 19.1.0.20200306
-- The CXX compiler identification is Intel 19.1.0.20200306
-- Check for working C compiler: /opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/icc
-- Check for working C compiler: /opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/icc -- works
...
-- Check for working CXX compiler: /opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/icpc
-- Check for working CXX compiler: /opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/icpc -- works
...
-- Looking for a Fortran compiler
-- Looking for a Fortran compiler - /opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/ifort
-- The Fortran compiler identification is Intel 19.1.0.20200306
-- Check for working Fortran compiler: /opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/ifort
-- Check for working Fortran compiler: /opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/ifort -- works
...
-- Found MPI_C: /opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/lib/libmpifort.so (found version "3.1")
-- Found MPI_CXX: /opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/lib/libmpicxx.so (found version "3.1")
-- Found MPI_Fortran: /opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/lib/libmpifort.so (found version "3.1")
-- Found MPI: TRUE (found version "3.1") found components: C Fortran CXX
...
ADIOS2 build configuration:
ADIOS Version: 2.7.0.45
C++ Compiler : Intel 19.1.0.20200306
/opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/icpc
Fortran Compiler : Intel 19.1.0.20200306
/opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/ifort
Installation prefix: /usr/local
bin: bin
lib: lib64
include: include
cmake: lib64/cmake/adios2
python: lib/python3.7/site-packages
Features:
Library Type: shared
Build Type: Release
Testing: ON
Examples: ON
Build Options:
Blosc : OFF
BZip2 : ON
ZFP : OFF
SZ : OFF
MGARD : OFF
PNG : OFF
MPI : ON
DataMan : OFF
Table : OFF
SSC : ON
SST : ON
DataSpaces: OFF
ZeroMQ : OFF
HDF5 : ON
HDF5_VOL : OFF
IME : OFF
Python : ON
Fortran : ON
SysVShMem : ON
Profiling : ON
Endian_Reverse: OFF
RDMA Transport for Staging: Unconfigured
-- Configuring done
-- Generating done
-- Build files have been written to: /home1/02743/catkins3/Code/adios2/build/master
I tried, but got this error:
cmake -DCMAKE_INSTALL_PREFIX=/work/07648/lwan86/frontera/Software/adios2/master/install ../ADIOS2/ -- The C compiler identification is unknown -- The CXX compiler identification is unknown -- Check for working C compiler: /opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/icc -- Check for working C compiler: /opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/icc -- broken CMake Error at /opt/apps/cmake/3.16.1/share/cmake-3.16/Modules/CMakeTestCCompiler.cmake:60 (message): The C compiler
"/opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/icc"
is not able to compile a simple test program.
It fails with the following output:
Change Dir: /work/07648/lwan86/frontera/Software/adios2/master/build/CMakeFiles/CMakeTmp
Run Build Command(s):/bin/gmake cmTC_13e57/fast && /bin/gmake -f CMakeFiles/cmTC_13e57.dir/build.make CMakeFiles/cmTC_13e57.dir/build
gmake[1]: Entering directory `/work/07648/lwan86/frontera/Software/adios2/master/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_13e57.dir/testCCompiler.c.o
/opt/intel/compilers_and_libraries_2020.1.217/linux/bin/intel64/icc -o CMakeFiles/cmTC_13e57.dir/testCCompiler.c.o -c /work/07648/lwan86/frontera/Software/adios2/master/build/CMakeFiles/CMakeTmp/testCCompiler.c
Catastrophic error: could not set locale "" to allow processing of multibyte characters
compilation aborted for /work/07648/lwan86/frontera/Software/adios2/master/build/CMakeFiles/CMakeTmp/testCCompiler.c (code 4)
gmake[1]: *** [CMakeFiles/cmTC_13e57.dir/testCCompiler.c.o] Error 4
gmake[1]: Leaving directory `/work/07648/lwan86/frontera/Software/adios2/master/build/CMakeFiles/CMakeTmp'
gmake: *** [cmTC_13e57/fast] Error 2
@lwan86 this final error seems to be related to the locales of your system. See this answer (https://stackoverflow.com/questions/13385780/i-am-not-able-to-compile-with-mpi-compiler-with-c).
On the other hand I will solely export the fortram compiler since by default your system is picking up icc and icpc.
I tried to build ADIOS2 on TACC's frontera where the impi/19.0.9 is used. It seems cmake couldn't find that version of MPI. @chuckatkins