I'm currently working on my own renderer program using c++. Everything was fine until I update the MacOS to 15.4. I keep receiving these errors: "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1/cerrno:30:5 <cerrno> tried including <errno.h> but didn't find libc++'s <errno.h> header. This usually means that your header search paths are not configured properly. The header search paths should contain the C++ Standard Library headers before any C Standard Library, and you are probably using compiler flags that make that not be the case."
It says I have problem with finding <errno.h> while including <iostream>.
After searching for solutions, I check the related xcode path, xcode-select -p shows : "/Applications/Xcode.app/Contents/Developer", seems fine.
And I can actually see the errno.h file in the folder "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/errno.h"
I tried to use CommandLineTool's SDKs by sudo xcode-select -s /Library/Developer/CommandLineTools but not working.
The error Information says: This usually means that your header search paths are not configured properly.The header search paths should contain the C++ Standard Library headers before any C Standard Library, and you are probably using compiler flags that make that not be the case.
Additionally, after running xcodebuild -showsdks
, it shows two identical macosx sdks "macos 15.4". Could this be a hint?
I also have tried reinstall xcode, not working.
I've just created a simple project including <iostream> and running std::cout << errno, it worked fine. So I tried to run it in my renderer program by cutting all the compile sources except "main.cpp", it still get the errors. What have changed? How do I set things right?