The makefile only sets cc, not c++. If I remove -lstc++ from LIBS, then I need to add it to the portfile using LDFLAGS. The Makefile uses LFLAGS, which I don’t want to override. Should I add LDFLAGS to MAIN, like so:
$(MAIN): $(OBJS)
$(CC) $(CFLAGS) $(INCLUDES) -o $(MAIN) $(OBJS) $(LFLAGS) $(LIBS)
$(LDFLAGS)
Makefile
Description: Binary data
Mark Brethen [email protected] > On Aug 8, 2022, at 11:10 AM, Joshua Root <[email protected]> wrote: > > That's a completely different thing. The language standard is selected by > -std, the stdlib implementation is selected by -stdlib, and linking to a > stdlib directly (as -lstdc++ does) is usually a bug since the C++ compiler > will implicitly add the appropriate stdlib when linking. > > - Josh > > On 2022-8-9 01:16 , Mark Brethen wrote: >> There is also -lstdc++, I thought those should be set in the Portfile. >> Doesn’t macports-clang have its own standard? >> Mark Brethen >> [email protected] <mailto:[email protected]> >>> On Aug 7, 2022, at 7:22 PM, Ryan Schmidt <[email protected] >>> <mailto:[email protected]>> wrote: >>> >>> In fact, the Makefile already had -std=c++11, but your patchfile removed >>> it. So don't remove it. >
