<div dir="ltr"><div class="gmail_default" style="font-family:courier new,monospace">Thanks, Erik.</div><div class="gmail_default" style="font-family:courier new,monospace"><br></div><div class="gmail_default" style="font-family:courier new,monospace">Hmm, OK. It turns out that I *have* ld64 installed via MacPorts, and I think that's what's being used here:<br><br>gs66-shannon:~ bjkelly1$ L /opt/local/bin/ld*<br>lrwxr-xr-x 1 root admin 8 Sep 28 19:42 /opt/local/bin/ld -> ld-xcode<br>lrwxr-xr-x 1 root admin 16 Sep 28 19:42 /opt/local/bin/ld-classic -> ld-classic-xcode<br>lrwxr-xr-x 1 root admin 32 Sep 28 19:41 /opt/local/bin/ld-classic-xcode -> ../libexec/ld64/ld-classic-xcode<br>lrwxr-xr-x 1 root admin 24 Sep 28 19:41 /opt/local/bin/ld-xcode -> ../libexec/ld64/ld-xcode<br>-rwxr-xr-x 1 root admin 176 Sep 28 20:06 /opt/local/bin/ld.lld-mp-14<br>-rwxr-xr-x 1 root admin 180 Sep 28 20:06 /opt/local/bin/ld64.lld-mp-14<br><br>I just tried setting LD = /opt/local/bin/ld-classic , but the failure is the same.</div><div class="gmail_default" style="font-family:courier new,monospace"><br></div><div class="gmail_default" style="font-family:courier new,monospace">I then tried using the pre-MacPorts system linker, LD = /usr/bin/ld, but the failure is unchanged.</div><div class="gmail_default" style="font-family:courier new,monospace"><br></div><div class="gmail_default" style="font-family:courier new,monospace">Perhaps there's a linker flag I should be setting? Right now I have nothing in LDFLAGS.</div><div class="gmail_default" style="font-family:courier new,monospace"><br></div><div class="gmail_default" style="font-family:courier new,monospace">Bernard</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Nov 16, 2023 at 4:41 PM Erik Schnetter <<a href="mailto:schnetter@gmail.com">schnetter@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Bernard<br>
<br>
Your C++ compiler is probably fine, but your linker ("ld") is not, it<br>
cannot handle GCC's output.<br>
<br>
I have a MacPorts package "ld64" installed. Maybe that would help?<br>
<br>
-erik<br>
<br>
On Thu, Nov 16, 2023 at 3:49 PM Bernard Kelly <<a href="mailto:physicsbeany@gmail.com" target="_blank">physicsbeany@gmail.com</a>> wrote:<br>
><br>
> Hi Roland.<br>
><br>
> I'm attaching the config.log file here (I had to hunt it down in configs/sim/config-data, since the configure step failed before it could point to anything).<br>
><br>
> Since the logfile gives a small C++ program that failed to compile, I copied it to testGPP2.cpp, and tried compiling it myself; and yes, it failed. Errors from this are short enough to quote here:<br>
><br>
> ------------<br>
> gs66-shannon:Cactus_ET_2023_05 bjkelly1$ /opt/local/bin/g++-mp-13 testGPP2.cpp<br>
> ld: warning: ignoring duplicate libraries: '-lgcc'<br>
> 0 0x1049cb648 __assert_rtn + 72<br>
> 1 0x1048fffac ld::AtomPlacement::findAtom(unsigned char, unsigned long long, ld::AtomPlacement::AtomLoc const*&, long long&) const + 1204<br>
> 2 0x104915924 ld::InputFiles::SliceParser::parseObjectFile(mach_o::Header const*) const + 15164<br>
> 3 0x104922e30 ld::InputFiles::parseAllFiles(void (ld::AtomFile const*) block_pointer)::$_7::operator()(unsigned long, ld::FileInfo const&) const + 420<br>
> 4 0x1a0274440 _dispatch_client_callout2 + 20<br>
> 5 0x1a0289544 _dispatch_apply_invoke_and_wait + 224<br>
> 6 0x1a028884c _dispatch_apply_with_attr_f + 1180<br>
> 7 0x1a0288a38 dispatch_apply + 96<br>
> 8 0x10499d3b8 ld::AtomFileConsolidator::parseFiles(bool) + 292<br>
> 9 0x10493e170 main + 9048<br>
> ld: Assertion failed: (resultIndex < sectData.atoms.size()), function findAtom, file Relocations.cpp, line 1336.<br>
> collect2: error: ld returned 1 exit status<br>
> ------------<br>
><br>
> As for your other question, no, there's no environment variable set with a name containing CXX.<br>
><br>
> Thanks, Bernard<br>
><br>
><br>
> On Thu, Nov 16, 2023 at 3:35 PM Roland Haas <<a href="mailto:rhaas@illinois.edu" target="_blank">rhaas@illinois.edu</a>> wrote:<br>
>><br>
>> Hello Bernard,<br>
>><br>
>> Odd. You have the correct CXXFLAGS and the compiler seems new enough.<br>
>><br>
>> Could you attach the config.log file that the run produced (should be<br>
>> mentioned near the end with full path).<br>
>><br>
>> Since this has been an issue in the past: there are no environment<br>
>> variables CXX or CXXFLAGS defined in you shell (env | grep CXX finds<br>
>> nothing)?<br>
>><br>
>> Yours,<br>
>> Roland<br>
>><br>
>> > Hi. I tried making a new configuration on my Macbook (MacOS Ventura,<br>
>> > 13.6.2) after a gap of several months, and it's now failing the "make<br>
>> > sim-config" step with a complaint about the C++ compiler not being<br>
>> > C++11-compliant -- end of the make config step screen output is below.<br>
>> ><br>
>> > I'm using the latest available Macports-supplied GNU compilers<br>
>> > (gcc-mp-13, g++-mp-13, etc.), with the following C & C++ options:<br>
>> ><br>
>> > ---------- compiler flags -----------<br>
>> > CPP = /opt/local/bin/cpp-mp-13<br>
>> > CC = /opt/local/bin/gcc-mp-13<br>
>> > CXX = /opt/local/bin/g++-mp-13<br>
>> > CPPFLAGS =<br>
>> > CFLAGS = -std=c99<br>
>> > CXXFLAGS = -std=c++14<br>
>> > C_LINE_DIRECTIVES = yes<br>
>> > OPTIMISE = yes<br>
>> > CPP_OPTIMISE_FLAGS = # -DCARPET_OPTIMISE -DNDEBUG<br>
>> > C_OPTIMISE_FLAGS = -O2 -march=native<br>
>> > CXX_OPTIMISE_FLAGS = -O2 -march=native<br>
>> > OPENMP = yes<br>
>> > CPP_OPENMP_FLAGS = -fopenmp<br>
>> > C_OPENMP_FLAGS = -fopenmp<br>
>> > CXX_OPENMP_FLAGS = -fopenmp<br>
>> > WARN = yes<br>
>> > CPP_WARN_FLAGS = -Wall<br>
>> > C_WARN_FLAGS = -Wall<br>
>> > CXX_WARN_FLAGS = -Wall<br>
>> > ---------- end of compiler flags -----------<br>
>> ><br>
>> > Can anyone suggest what's up? The error says that the C++ compiler is<br>
>> > failing to do range-based for statements, but I can compile & run a simple<br>
>> > program with a range-based for statement, so this seems unlikely.<br>
>> ><br>
>> > I'm currently on ET_2023-05, but have this problem with ET_2022_11 as well,<br>
>> > and with gcc-mp-12.<br>
>> ><br>
>> > Thanks, Bernard<br>
>> ><br>
>> > --------------- last bit of screen output ---------<br>
>> > checking if compiler has broken omp collapse... no<br>
>> > checking for getopt_long_only... yes<br>
>> > checking for working const... yes<br>
>> > checking for C inline... inline<br>
>> > checking for C static inline... static inline<br>
>> > checking for C restrict... restrict<br>
>> > checking for C++ restrict... __restrict__<br>
>> > checking for C++ copysign... std::copysign<br>
>> > checking for C++ fpclassify... std::fpclassify<br>
>> > checking for C++ isfinite... std::isfinite<br>
>> > checking for C++ isinf... std::isinf<br>
>> > checking for C++ isnan... std::isnan<br>
>> > checking for C++ isnormal... std::isnormal<br>
>> > checking for C++ signbit... std::signbit<br>
>> > checking for C _Pragma... yes<br>
>> > checking for C function __attribute__((__const__))... yes<br>
>> > checking for C++ function __attribute__((__const__))... yes<br>
>> > checking for C++ member function __attribute__((__const__))... yes<br>
>> > checking for C function __attribute__((__pure__))... yes<br>
>> > checking for C++ function __attribute__((__pure__))... yes<br>
>> > checking for C++ member function __attribute__((__pure__))... yes<br>
>> > checking for C data __attribute__((__common__))... yes<br>
>> > checking for C+ data __attribute__((__common__))... yes<br>
>> > checking for C function __attribute__((__noinline__))... yes<br>
>> > checking for C++ function __attribute__((__noinline__))... yes<br>
>> > checking for C++ member function __attribute__((__noinline__))... yes<br>
>> > checking for C function __attribute__((__always_inline__))... yes<br>
>> > checking for C++ function __attribute__((__always_inline__))... yes<br>
>> > checking for C++ member function __attribute__((__always_inline__))... yes<br>
>> > checking for C __attribute__((__unused__))... yes<br>
>> > checking for C++ __attribute__((__unused__))... yes<br>
>> > checking for C __attribute__((__aligned__(...)))... yes<br>
>> > checking for C++ __attribute__((__aligned__(...)))... yes<br>
>> > checking for C __attribute__((__cold__))... yes<br>
>> > checking for C++ __attribute__((__cold__))... yes<br>
>> > checking for C __attribute__((__hot__))... yes<br>
>> > checking for C++ __attribute__((__hot__))... yes<br>
>> > checking for C __attribute__((__format__(printf, 1, 2)))... yes<br>
>> > checking for C++ __attribute__((__format__(printf, 1, 2)))... yes<br>
>> > checking for C __attribute__((__noreturn__))... yes<br>
>> > checking for C++ __attribute__((__noreturn__))... yes<br>
>> > checking for C __attribute__((__nonnull__))... yes<br>
>> > checking for C++ __attribute__((__nonnull__))... yes<br>
>> > checking for C __attribute__((__returns_nonnull__))... yes<br>
>> > checking for C++ __attribute__((__returns_nonnull__))... yes<br>
>> > checking for C __builtin_expect... yes<br>
>> > checking for C++ __builtin_expect... yes<br>
>> > checking for C __builtin_trap... yes<br>
>> > checking for C++ __builtin_trap... yes<br>
>> > checking for C __builtin_unreachable... no<br>
>> > checking for C++ __builtin_unreachable... no<br>
>> > checking for C __builtin_assume_aligned... yes<br>
>> > checking for C++ __builtin_assume_aligned... yes<br>
>> > checking for C++ static_assert... yes<br>
>> > checking for C++ auto specifier... yes<br>
>> > checking for C++ lambda expressions... yes<br>
>> > checking for C++ range-based for statements... no<br>
>> > Cactus requires a C++11 compiler -- check your C++ compiler and C++<br>
>> > compiler flags<br>
>> ><br>
>> > Error reconfiguring sim-config<br>
>> > make: *** [sim-config] Error 2<br>
>> ><br>
>><br>
>><br>
>> Yours,<br>
>> Roland<br>
>><br>
>> --<br>
>> My email is as private as my paper mail. I therefore support encrypting<br>
>> and signing email messages. Get my PGP key from <a href="http://pgp.mit.edu" rel="noreferrer" target="_blank">http://pgp.mit.edu</a> .<br>
><br>
><br>
><br>
> --<br>
> ------------------------------------------------------------------<br>
> Bernard Kelly -- CRESST Assistant Research Scientist, NASA/GSFC<br>
> Gravitational Astrophysics Laboratory --- Code 663<br>
><br>
> Phone: +1 (301) 286-7243 *** Fax: +1 (301) 286-2226<br>
> Web: <a href="http://science.gsfc.nasa.gov/sed/bio/bernard.j.kelly" rel="noreferrer" target="_blank">http://science.gsfc.nasa.gov/sed/bio/bernard.j.kelly</a><br>
> ORCID: <a href="http://orcid.org/0000-0002-3326-4454" rel="noreferrer" target="_blank">orcid.org/0000-0002-3326-4454</a><br>
> ------------------------------------------------------------------<br>
> _______________________________________________<br>
> Users mailing list<br>
> <a href="mailto:Users@einsteintoolkit.org" target="_blank">Users@einsteintoolkit.org</a><br>
> <a href="http://lists.einsteintoolkit.org/mailman/listinfo/users" rel="noreferrer" target="_blank">http://lists.einsteintoolkit.org/mailman/listinfo/users</a><br>
<br>
<br>
<br>
-- <br>
Erik Schnetter <<a href="mailto:schnetter@gmail.com" target="_blank">schnetter@gmail.com</a>><br>
<a href="http://www.perimeterinstitute.ca/personal/eschnetter/" rel="noreferrer" target="_blank">http://www.perimeterinstitute.ca/personal/eschnetter/</a><br>
</blockquote></div><br clear="all"><div><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature">------------------------------------------------------------------<br>Bernard Kelly -- CRESST Assistant Research Scientist, NASA/GSFC<br>Gravitational Astrophysics Laboratory --- Code 663<br> <br>Phone: +1 (301) 286-7243 *** Fax: +1 (301) 286-2226<br>Web: <a href="http://science.gsfc.nasa.gov/sed/bio/bernard.j.kelly" target="_blank">http://science.gsfc.nasa.gov/sed/bio/bernard.j.kelly</a><br>ORCID: <a href="http://orcid.org/0000-0002-3326-4454" target="_blank">orcid.org/0000-0002-3326-4454</a><br>------------------------------------------------------------------</div>