> Mojave 10.14 and later doesn't provide /usr/include anymore. System headers 
> like <algorithm> are only in the SDK now. Note the -isystem flag with the 
> path to the SDK isn't in that compile line. MacPorts put that flag into 
> CFLAGS, CXXFLAGS, CPPFLAGS, and a comparable one into LDFLAGS for you, so 
> this shows you that your build system isn't respecting those variables yet. 
> Read the makefile portgroup to see if any of the options it provides can help 
> you. Read your project's Makefile to see how it expects those values to be 
> supplied. The Makefile may not provide a way. If not, you'll have to patch it 
> to make it possible.

clang (and gcc) both respect the SDKROOT env. var. This is an easy way to by  
the right SDK root.

Add this to your login profile

export SDKROOT=`xcrun --show-sdk-path`

Note. you can also use xcrun directly with clang/gcc to do the same

 > xcrun clang …..

but that requires the build commands to be patched, whereas setting SDKROOT, 
assuming the build system does not actively remove it, should work.

Chris

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to