I did a little grep and it turns out in the entire aspect source directory, it is only in a CMakeList.txt file for the worldbuilder system :
mkerr@igpp20grad7 aspect % grep -lr 'stdlib=libc++' *
contrib/world_builder/CMakeLists.txt
mkerr@igpp20grad7 aspect % vi contrib/world_builder/CMakeLists.txt
When I looked at the difference between this CMakeLists.txt file in 2.5 and 2.6 I saw that
< SET(WB_COMPILER_OPTIONS_PRIVATE $<$<COMPILE_LANGUAGE:CXX>:-std=c++14 -Wpointer-arith -Wwrite-strings -Wsynth -Wsign-compare -Woverloaded-virtual -Wno-literal-range -Wno-parentheses -Wno-unused-local-typedefs -Wcast-qual -fstrict-aliasing -stdlib=libc++ -Wuninitialized -Werror=uninitialized -Wdangling-else>)
---
> SET(WB_COMPILER_OPTIONS_PRIVATE $<$<COMPILE_LANGUAGE:CXX>:-std=c++14 -Wpointer-arith -Wwrite-strings -Wsynth -Wsign-compare -Woverloaded-virtual -Wno-literal-range -Wno-parentheses -Wno-unused-local-typedefs -Wcast-qual -fstrict-aliasing -Wuninitialized -Werror=uninitialized -Wdangling-else>)
the difference is that 2.6 added that flag into the compiler flags. When I delete -stdlib=libc++ from the file I can compile aspect! However I cant run it
mkerr@igpp20grad7 convection-box % ./../../build/aspect convection-box.prm
^C
mkerr@igpp20grad7 convection-box % mpirun ../../build/aspect convection-box.prm
-----------------------------------------------------------------------------
-- This is ASPECT --
-- The Advanced Solver for Planetary Evolution, Convection, and Tectonics. --
-----------------------------------------------------------------------------
-- . version 2.6.0-pre (main, 60d92af1a)
-- . using deal.II 9.5.1
-- . with 32 bit indices and vectorization level 2 (256 bits)
-- . using Trilinos 13.2.0
-- . using p4est 2.3.2
-- . using Geodynamic World Builder 0.6.0
-- . running in DEBUG mode
-- . running with 4 MPI processes
-----------------------------------------------------------------------------
libc++abi: terminating due to uncaught exception of type std::bad_cast: std::bad_cast
[igpp20grad7:48673] *** Process received signal ***
[igpp20grad7:48673] Signal: Abort trap: 6 (6)
[igpp20grad7:48673] Signal code: (0)
[igpp20grad7:48673] *** End of error message ***
--------------------------------------------------------------------------
prterun noticed that process rank 0 with PID 48673 on node igpp20grad7 exited on
signal 6 (Abort trap: 6).
--------------------------------------------------------------------------
mkerr@igpp20grad7 convection-box % cd ..
indeed its a libc++ error which makes sense that I shouldn’t just delete it, but I guess it was a needed addition for some part of 2.6, im not sure what.
edit: I also noticed in configuring that mpi_c and mpi_fort have what I believe is a symlink to /usr/local/Cellar/open-mpi/5.0.3_1/lib where mpicxx does not have that
-- Found MPI_C: /usr/local/Cellar/open-mpi/5.0.3_1/lib/libmpi.dylib (found version "3.1")
-- Found MPI_CXX: /usr/local/bin/mpicxx (found version "3.1")
-- Found MPI_Fortran: /usr/local/Cellar/open-mpi/5.0.3_1/lib/libmpi_usempif08.dylib (found version "3.1")
-- Found MPI: TRUE (found version "3.1")