diff --git a/ProcessLib/BoundaryConditionAndSourceTerm/Python/CMakeLists.txt b/ProcessLib/BoundaryConditionAndSourceTerm/Python/CMakeLists.txt
index eac165877cfe05ef07576d594da54a1776d507c3..674576996a7385c87f6819ec8afd938417fe7687 100644
--- a/ProcessLib/BoundaryConditionAndSourceTerm/Python/CMakeLists.txt
+++ b/ProcessLib/BoundaryConditionAndSourceTerm/Python/CMakeLists.txt
@@ -47,7 +47,7 @@ target_link_libraries(
            $<IF:$<BOOL:${OGS_BUILD_WHEEL}>,pybind11::module,pybind11::embed>
 )
 
-if(OGS_BUILD_WHEEL)
+if(OGS_BUILD_WHEEL OR (APPLE AND OGS_USE_PETSC))
     target_link_options(
         ProcessLibBoundaryConditionAndSourceTermPython PUBLIC
         $<$<CXX_COMPILER_ID:AppleClang>:-undefined dynamic_lookup>