I was trying to make the custom blacs library (after successfully doing this last year) and just received this error:
sudo make libintel64 interface=lp64 Password: /Applications/Xcode.app/Contents/Developer/usr/bin/make clean mkobjdir wraplib ILP_EXT=_lp64 _IA=intel64 rm -rf ./obj_lp64 rm -f ../../lib//libmkl_blacs_custom_lp64 mkdir -p ./obj_lp64 mkdir -p ../../lib/ mpicc -c -Wall -fPIC -I../../include mklmpi-impl.c -o obj_lp64/mklmpi-impl.o mklmpi-impl.c(87): error: identifier "MPI_UB" is undefined RETURN_IF(xdatatype,MPI_UB); ^
I think this is because I'm now using openmpi 4.0.1 and MPI_UB is no longer supported.
Workaround is to comment out line 87 in mklmpi-impl.c.
Also for reference for others trying to get mpich or openmpi compiled on recent versions of Mac OS:
- the current version of mpich does not compile on Mac OS 10.14.5 with intel compilers 19.0.4, hence why I'm building the openmpi custom blacs rather than using the mpich version that ships with the mkl.
- to compile openmpi on Mac OS 10.14.5 with intel compilers 19.0.4 you need to add --disable-dlopen when running the configure script otherwise you'll get errors down the road when trying to build and run executables:
Thanks for the workaround suggested. Very likely this case will work without a problem, but we have to note that the latest MKL 2019 is not validated against this version of Open MPI.