Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing MPI C++ bindings when using FEI #1093

Open
greene30 opened this issue Apr 19, 2024 · 0 comments
Open

Missing MPI C++ bindings when using FEI #1093

greene30 opened this issue Apr 19, 2024 · 0 comments

Comments

@greene30
Copy link

I'm trying to build hypre on macOS as a shared library with FEI. I'm getting some undefined symbol errors for some MPI C++ functions.

Undefined symbols for architecture arm64:
  "__ZN3MPI3Win4FreeEv", referenced from:
      __ZTVN3MPI3WinE in FEI_HYPRE_Impl.cxx.o
      __ZTVN3MPI3WinE in LLNL_FEI_Impl.cxx.o
      __ZTVN3MPI3WinE in LLNL_FEI_Fei.cxx.o
      __ZTVN3MPI3WinE in LLNL_FEI_LSCore.cxx.o
      __ZTVN3MPI3WinE in LLNL_FEI_Solver.cxx.o
      __ZTVN3MPI3WinE in LLNL_FEI_Matrix.cxx.o
      __ZTVN3MPI3WinE in HYPRE_LSC_aux.cxx.o
      ...

I was able to fix the issue by adding the following lines to src/CMakeLists.txt at the end of the "if (HYPRE_USING_FEI)" block between lines 553 and 570.

  if (NOT HYPRE_SEQUENTIAL)
    target_link_libraries(${PROJECT_NAME} PUBLIC MPI::MPI_CXX)
  endif(NOT HYPRE_SEQUENTIAL)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant