Open jiaqiwang969 opened 3 years ago
Thank you for the feedback. We will be testing on an M1 Mac soon and it should get easier then. I will use your instructions to get started.
I really like your findings @jiaqiwang969 . Thank you very much for this feedback. Unfortunately I don't have access to an apple machine having a m1/arm architecture to test something, currently or in the near future, respectively.
Hello, sir. I try to use self-hosted CI to make my statement more clear for arm64 dealii building.
A similar bug of "Could NOT find MPI" ref to https://github.com/dealii/dealii/issues/5510 occurs. But here in arm64 m1. Actually, mpi.h is in "/opt/homebrew/Cellar/open-mpi/4.1.1_2/include". It works fine--mpi could be found when in local building. I am not sure how to deal with it with some no-use trials. Could u help me? More detail could ref to https://github.com/jiaqiwang969/dealii-candi-test/runs/2892920992
@tjhei @koecher
Difficult to identify without access to the machine. A first step would be to look at CMakeError.log to see what is going on.
I will have access to an M1 MAC in the next few weeks and I will tackle this then.
@jiaqiwang969 same for me, I won't have access to a M1 machine in the near future unfortunately.
As you reported that the mpi.h
file can be found in the include dir, can you set up the following:
export MPI_BIN /usr/lib64/openmpi/bin
export MPI_INCLUDE /usr/include/openmpi-x86_64
export MPI_LIB /usr/lib64/openmpi/lib
export MPI_HOME /usr/lib64/openmpi
with the corresponding directories of your machine before running candi. Please remove any temporary build files before the next run.
@jiaqiwang969 same for me, I won't have access to a M1 machine in the near future unfortunately.
As you reported that the
mpi.h
file can be found in the include dir, can you set up the following:export MPI_BIN /usr/lib64/openmpi/bin export MPI_INCLUDE /usr/include/openmpi-x86_64 export MPI_LIB /usr/lib64/openmpi/lib export MPI_HOME /usr/lib64/openmpi
with the corresponding directories of your machine before running candi. Please remove any temporary build files before the next run.
nope, I have tried, it not works. Thanks.
I have had success on my new M1 MAC when using gcc:
export OMPI_FC=gfortran-11;export OMPI_CC=gcc-11;export OMPI_CXX=g++-11
I created pull requests for some minor fixes: #248 #247
I have not tested all packages so far (just p4est, trilinos, deal.II). So let's keep this open for now.
I did some more testing and learned the following:
In my mac environment with big sur arm64 arch.
./candi.sh --platform=deal.II-toolchain/platforms/supported/bigsur.platform -j 4
cmake version 3.20.4 gfortran --version GNU Fortran (Homebrew GCC 11.1.0_1) 11.1.0
Fix some errors in the middle:
~ % ls deal.ii-candi configuration oce-OCE-0.18.2 petsc-3.14.0 trilinos-release-12-18-1 deal.II-v9.3.0 p4est-2.2 slepc-3.14.0 hdf5-1.10.7 parmetis-4.0.3 tmp
Its success to build in apple m1 with candi. Hope it works smoother~
Thanks