[Users] Can't build on Mac OS Catalina

Murray Wolinsky mmwolinsky at gmail.com
Wed Jul 28 13:17:23 CDT 2021


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.einsteintoolkit.org/pipermail/users/attachments/20210728/5d94e815/attachment.html 


More information about the Users mailing list