Error in Compiling OpenFAST macOS m1
Hello,
I’m encountering an issue while compiling OpenFAST on an M1 ARM processor using Matlab R2024a. During the compilation, I receive an error message. Could anyone advise on how to resolve this issue? Thank you!
[ 87%] Linking CXX static library libmappplib.a /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(bstraux.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(bstrlib.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(dpmpar.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(enorm.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(enorm_u.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(lmder.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(lmpar.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(qrfac.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(qrsolv.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(freedata.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(jacobian.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(lineroutines.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(lmroutines.cc.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(mapapi.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(maperror.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(mapinit.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(numeric.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(outputstream.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(residual.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(simclist.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(bstraux.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(bstrlib.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(dpmpar.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(enorm.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(enorm_u.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(lmder.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(lmpar.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(qrfac.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(qrsolv.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(freedata.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(jacobian.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(lineroutines.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(lmroutines.cc.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(mapapi.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(maperror.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(mapinit.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(numeric.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(outputstream.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(residual.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) /Library/Developer/CommandLineTools/usr/bin/ranlib: archive member: libmappplib.a(simclist.c.o) cputype (16777228) does not match previous archive members cputype (16777223) (all members must match) make[2]: *** [modules/map/libmappplib.a] Error 1 make[2]: *** Deleting file `modules/map/libmappplib.a' make[1]: *** [modules/map/CMakeFiles/mappplib.dir/all] Error 2 make: *** [all] Error 2
@iurii-storozhenko The error message indicates that libmappplib.a library was originally compiled for x86-64 but is now being compiled for arm64. It looks like there's a mismatch in how these files were compiled. Which compilers did you use for OpenFAST? Are you using the arm64 version of MATLAB 2024a? Which version of OpenFAST are you compiling? What was your CMake configuration command? In the future, please use the bug report template when creating an issue for this repository.
Hello Derek,
Thanks a lot for your reply. I was using the following software:
OpenFAST: The latest one from Github. Matlab: R2024b Update 3 (maca64) MacOS: Sequoia (m1)
First I was clowning the GitHub repository with “git clone https://github.com/OpenFAST/OpenFAST.git”
Then, I used the same procedure for compilation outlined in https://openfast.readthedocs.io/en/main/source/install/index.html#cmake-with-make-for-linux-macos
The error remains unchanged so that I might need a special configuration command for CMake. Please clarify which exact command I should be using. I did not find anything about it in the compilation documentation. Thank you!