Murray I recommend creating an "option list". This is a file that sets the configuration variables. Simfactory's directory "simfactory/mdb/optionlists" has many examples from other systems.
When you debug creating a configuration, it's a good idea to start from scratch each time, so that left-over bits from earlier attempts don't cause problems. You would "rm -rf configs/sim", and then pass the option "--optionslist=..." with your option list as argument. -erik On Wed, Jul 28, 2021 at 2:17 PM Murray Wolinsky <[email protected]> wrote: > > Hi All, > > I'm unable to build the Einstein Toolkit on Mac OS Catalina. Has anyone done > so -- and do you have suggestions? > > When I try to run ./simfactory/bin/sim build -j2 --thornlist > ../einsteintoolkit.th I get the following error: > > Cactus requires a C++11 compiler -- check your C++ compiler and C++ compiler > flags > > I know that the Mac makes it very difficult to use gcc instead of clang, but > AFAICS I'm using the Homebrew gcc-11 compiler (Homebrew GCC 11.1.0_1) 11.1.0) > and setting the options and flags properly in both the files OptionsList and > generic-11.cfg : > > Setting CC to 'gcc-11' > Setting CXX to 'g++-11' > > Setting CXXFLAGS to '-g -std=gnu++11' > > etc. > > Do I need to set environment variables? Is there some other toolkit file I > should l modify? > > I appreciate any help anyone can provide! > > Thanks in advance! > > Murray > > ____________________________________________________________ > > This is the output from the above sim command: > > ~/et/Cactus ❯ ./simfactory/bin/sim build -j2 --thornlist > ../einsteintoolkit.th base 3.8.3 11:58:06 > Using configuration: sim > Reconfiguring sim > Writing configuration to: /Users/murray/et/Cactus/configs/sim/OptionList > Cactus - version: 4.10.0 > Reconfiguring sim. > Using configuration options from configure line > Setting fds to '3,4 -j --' > End of options from configure line > Adding configuration options from > '/Users/murray/et/Cactus/configs/sim/OptionList'... > Setting VERSION to '2021-07-27' > Setting CPP to 'cpp-11' > Setting CC to 'gcc-11' > Setting CXX to 'g++-11' > Setting FPP to 'cpp-11' > Setting F90 to 'gfortran-11' > Setting LIBS to 'gfortran' > Setting LIBDIRS to '/usr/local/Cellar/gcc/11.1.0_1/lib/gcc/11/ > /usr/local/lib/' > Setting CPPFLAGS to '-g -std=gnu++11' > Setting FPPFLAGS to '-traditional' > Setting CFLAGS to '-g -std=gnu99' > Setting CXXFLAGS to '-g -std=gnu++11' > Setting F90FLAGS to '-g -fcray-pointer -ffixed-line-length-none' > Setting LDFLAGS to '-rdynamic -I/usr/local/lib/gfortran' > Setting DEBUG to 'no' > Setting CPP_DEBUG_FLAGS to '' > Setting C_DEBUG_FLAGS to '' > Setting CXX_DEBUG_FLAGS to '' > Setting OPTIMISE to 'yes' > Setting CPP_OPTIMISE_FLAGS to '' > Setting C_OPTIMISE_FLAGS to '-O2' > Setting CXX_OPTIMISE_FLAGS to '-O2' > Setting F90_OPTIMISE_FLAGS to '-O2' > Setting PROFILE to 'no' > Setting CPP_PROFILE_FLAGS to '' > Setting C_PROFILE_FLAGS to '-pg' > Setting CXX_PROFILE_FLAGS to '-pg' > Setting F90_PROFILE_FLAGS to '-pg' > Setting WARN to 'yes' > Setting CPP_WARN_FLAGS to '-Wall' > Setting C_WARN_FLAGS to '-Wall' > Setting CXX_WARN_FLAGS to '-Wall' > Setting F90_WARN_FLAGS to '-Wall' > Setting OPENMP to 'yes' > Setting CPP_OPENMP_FLAGS to '-fopenmp' > Setting FPP_OPENMP_FLAGS to '-D_OPENMP' > Setting C_OPENMP_FLAGS to '-fopenmp' > Setting CXX_OPENMP_FLAGS to '-fopenmp' > Setting F90_OPENMP_FLAGS to '-fopenmp' > Setting VECTORISE to 'yes' > Setting VECTORISE_ALIGNED_ARRAYS to 'no' > Setting VECTORISE_INLINE to 'yes' > Setting PTHREADS_DIR to 'NO_BUILD' > End of options from '/Users/murray/et/Cactus/configs/sim/OptionList'. > creating cache ./config.cache > checking host system type... x86_64-apple-darwin19.6.0 > checking for mawk... no > checking for gawk... no > checking for nawk... no > checking for awk... awk > checking whether make sets ${MAKE}... yes > checking whether the C compiler (gcc-11 -g -std=gnu99 -rdynamic > -I/usr/local/lib/gfortran) works... yes > checking whether the C compiler (gcc-11 -g -std=gnu99 -rdynamic > -I/usr/local/lib/gfortran) is a cross-compiler... no > checking whether we are using GNU C... yes > checking whether the C++ compiler (g++-11 -g -std=gnu++11 -rdynamic > -I/usr/local/lib/gfortran) works... yes > checking whether the C++ compiler (g++-11 -g -std=gnu++11 -rdynamic > -I/usr/local/lib/gfortran) is a cross-compiler... no > checking whether we are using GNU C++... yes > checking for nvcc... no > checking for ranlib... ranlib > checking for perl... perl > checking for gtar... no > checking for tar... tar > checking for xargs... xargs > checking for gzip... gzip > checking for gpatch... no > checking for patch... patch > checking for git... git > checking for ar... ar > checking for mkdir... mkdir > checking for bash... /bin/sh > checking whether the Fortran compiler (gfortran-11 ) works... yes > checking whether the Fortran compiler (gfortran-11 ) is a cross-compiler... > no > checking whether the Fortran compiler (gfortran-11 ) supports TYPE(*) for > CCTK_PointerTo... yes > checking how to run the C preprocessor... cpp-11 > checking for ANSI C header files... no > checking for C99 features... yes > checking for M_PI... yes > checking for C strdup... yes > checking for C++ strdup... yes > checking whether byte ordering is bigendian... no > checking size of long long... 8 > checking size of long int... 8 > checking size of int... 4 > checking size of short int... 2 > checking size of long double... 16 > checking size of double... 8 > checking size of float... 4 > checking size of char *... 8 > checking for the null device... /dev/null > checking for gethostbyname... yes > checking whether mode_t is defined... yes > checking for availability of gettimeofday timing... yes > checking if gettimeofday needs timezone... yes > checking for availability of getrusage timing... yes > checking for availability of _ftime timing... no > checking for time.h... yes > checking for sys/time.h... yes > checking for sys/types.h... yes > checking for unistd.h... yes > checking for string.h... yes > checking for assert.h... yes > checking for tgmath.h... yes > checking for sys/stat.h... yes > checking for getopt.h... yes > checking for dirent.h... yes > checking for c_asm.h... no > checking for intrinsics.h... no > checking for mach/mach_time.h... yes > checking for regex.h... yes > checking for sys/filio.h... yes > checking for sys/ioctl.h... yes > checking for sys/socket.h... yes > checking for netinet/in.h... yes > checking for netdb.h... yes > checking for arpa/inet.h... yes > checking for winsock2.h... no > checking for crypt.h... no > checking for signal.h... yes > checking for malloc.h... no > checking for sched.h... yes > checking for execinfo.h... yes > checking whether time.h and sys/time.h may both be included... yes > checking whether socklen_t is defined... yes > checking whether SOCKET is defined... no > checking for hrtime_t... no > checking for gethrtime... no > checking for read_real_time... no > checking for time_base_to_time... no > checking for clock_gettime... yes > checking for mach_absolute_time... yes > checking for _rtc intrinsic... no > checking for mallinfo... no > checking for mallopt... no > checking for malloc_info... no > checking whether M_MMAP_THRESHOLD is defined... no > checking for sched_getaffinity... no > checking for getpid... yes > checking if __int64 is defined... no > checking if __int128 is defined... yes > checking for vector... yes > checking for vector.h... no > checking if Intel compiler has broken restrict... no > checking if compiler has broken omp collapse... no > checking for getopt_long_only... yes > checking for working const... yes > checking for C inline... inline > checking for C static inline... static inline > checking for C restrict... restrict > checking for C++ restrict... __restrict__ > checking for C++ copysign... std::copysign > checking for C++ fpclassify... std::fpclassify > checking for C++ isfinite... std::isfinite > checking for C++ isinf... std::isinf > checking for C++ isnan... std::isnan > checking for C++ isnormal... std::isnormal > checking for C++ signbit... std::signbit > checking for C _Pragma... yes > checking for C data __attribute__((__common__))... yes > checking for C+ data __attribute__((__common__))... yes > checking for C function __attribute__((__noinline__))... yes > checking for C++ function __attribute__((__noinline__))... yes > checking for C++ member function __attribute__((__noinline__))... yes > checking for C function __attribute__((__always_inline__))... yes > checking for C++ function __attribute__((__always_inline__))... yes > checking for C++ member function __attribute__((__always_inline__))... yes > checking for C __attribute__((__unused__))... yes > checking for C++ __attribute__((__unused__))... yes > checking for C __attribute__((__aligned__(...)))... yes > checking for C++ __attribute__((__aligned__(...)))... yes > checking for C __attribute__((__cold__))... yes > checking for C++ __attribute__((__cold__))... yes > checking for C __attribute__((__hot__))... yes > checking for C++ __attribute__((__hot__))... yes > checking for C __attribute__((__format__(printf, 1, 2)))... yes > checking for C++ __attribute__((__format__(printf, 1, 2)))... yes > checking for C __attribute__((__noreturn__))... yes > checking for C++ __attribute__((__noreturn__))... yes > checking for C __attribute__((__nonnull__))... yes > checking for C++ __attribute__((__nonnull__))... yes > checking for C __attribute__((__returns_nonnull__))... yes > checking for C++ __attribute__((__returns_nonnull__))... yes > checking for C __builtin_expect... yes > checking for C++ __builtin_expect... yes > checking for C __builtin_trap... yes > checking for C++ __builtin_trap... yes > checking for C __builtin_unreachable... yes > checking for C++ __builtin_unreachable... yes > checking for C __builtin_assume_aligned... yes > checking for C++ __builtin_assume_aligned... yes > checking for C++ static_assert... yes > checking for C++ auto specifier... yes > checking for C++ lambda expressions... yes > checking for C++ range-based for statements... no > Cactus requires a C++11 compiler -- check your C++ compiler and C++ compiler > flags > > > > > > _______________________________________________ > Users mailing list > [email protected] > http://lists.einsteintoolkit.org/mailman/listinfo/users -- Erik Schnetter <[email protected]> http://www.perimeterinstitute.ca/personal/eschnetter/ _______________________________________________ Users mailing list [email protected] http://lists.einsteintoolkit.org/mailman/listinfo/users
