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)

Attachment: 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.
> 

Reply via email to