[odb-users] Getting the ODB Compiler to Find the System Headers After macOS Catalina Update

Brian Coggins becoggins at hotmail.com
Sat May 15 15:09:28 EDT 2021

Dear all,

I recently updated a macOS system from Mojave to Catalina (yes, I know I'm behind a bit!) and I'm trying to figure out the right/best way to help the ODB compiler find the system headers.

For those who are not familiar, Catalina abandons /usr/include; the system headers are now deep inside an XCode directory, which the Apple-provided clang knows how to find.  But the odb compiler does not know how to find the new include directory.

One option would be to modify every Makefile that calls odb, explicitly providing it with the new include path.  But it seems like there must be a better way.  Some compilers seem to be able to follow a SYSROOT environment variable to find Catalina headers, but my odb compiler build does not seem to recognize SYSROOT.

Has anyone dealt with this in Catalina or Big Sur and found an elegant solution?

(I built odb using build2 and Homebrew gcc-9.  odb version is 2.5.0-b.17.  Homebrew gcc is 9.2.0)


More information about the odb-users mailing list