Skip to content

Build failing on MacOS 15.2 (M1)  #3060

Open
@sun51027

Description

@sun51027

Dear developers,

I am installing Hermes-3 (along with its automatic download of BOUT-dev) on my personal laptop (M1 Mac) running macOS 15.2.
I have executed the cmake command:
$ cmake . -B build -DBOUT_DOWNLOAD_SUNDIALS=ON -DBOUT_ENABLE_BACKTRACE=Off -DCMAKE_OSX_ARCHITECTURES=arm64
then built it by $ cmake --build build
However, it is quite tricky for me to solve the issue below:

[ 13%] Built target pvode
[ 14%] Building CXX object external/BOUT-dev/externalpackages/PVODE/CMakeFiles/pvpre.dir/precon/pvbbdpre.cpp.o
[ 14%] Building CXX object external/BOUT-dev/externalpackages/PVODE/CMakeFiles/pvpre.dir/precon/band.cpp.o
[ 14%] Linking CXX shared library ../../lib/libpvpre.dylib
Undefined symbols for architecture arm64:
  "pvode::N_VWrmsNorm(pvode::nvec_type*, pvode::nvec_type*)", referenced from:
      pvode::PVBBDPrecon(int, double, pvode::nvec_type*, pvode::nvec_type*, int, int*, double, pvode::nvec_type*, double, double, long*, void*, pvode::nvec_type*, pvode::nvec_type*, pvode::nvec_type*) in pvbbdpre.cpp.o
  "pvode::RSqrt(double)", referenced from:
      pvode::PVBBDPrecon(int, double, pvode::nvec_type*, pvode::nvec_type*, int, int*, double, pvode::nvec_type*, double, double, long*, void*, pvode::nvec_type*, pvode::nvec_type*, pvode::nvec_type*) in pvbbdpre.cpp.o
  "pvode::N_VScale(double, pvode::nvec_type*, pvode::nvec_type*)", referenced from:
      pvode::PVBBDPrecon(int, double, pvode::nvec_type*, pvode::nvec_type*, int, int*, double, pvode::nvec_type*, double, double, long*, void*, pvode::nvec_type*, pvode::nvec_type*, pvode::nvec_type*) in pvbbdpre.cpp.o
      pvode::PVBBDPSol(int, double, pvode::nvec_type*, pvode::nvec_type*, pvode::nvec_type*, double, pvode::nvec_type*, double, long*, pvode::nvec_type*, int, void*, pvode::nvec_type*) in pvbbdpre.cpp.o
ld: symbol(s) not found for architecture arm64
c++: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [external/BOUT-dev/lib/libpvpre.1.0.0.dylib] Error 1
make[1]: *** [external/BOUT-dev/externalpackages/PVODE/CMakeFiles/pvpre.dir/all] Error 2
make: *** [all] Error 2

I will appreciate if you could point me how to address this. Thank you!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions