Catalina로 업그레이드한 후? " /> Catalina로 업그레이드한 후? " />
Catalina C :
Mojave에서 Catalina로 업그레이드한 후 사용자가 컴파일에 직면할 수 있는 "signbit" 오류 처리 C 프로그램에서
처음에는 CFLAGS, CCFLAGS 및 CXXFLAGS 환경 변수를 수정하려고 시도해도 결과가 나오지 않는 것으로 보입니다. 그러나 자세히 살펴보면 문제의 근본 원인은 다른 곳에 있습니다.
CMAKE_OSX_SYSROOT의 역할
CMAKE_OSX_SYSROOT의 가치 CMAKE_OSX_SYSROOT는 이 문제에서 중추적인 역할을 합니다. 기본적으로 Catalina로 업그레이드한 후 잘못된 위치를 가리킵니다. 이로 인해 빌드 시스템이 필요한 정의가 부족한 잘못된 헤더 파일을 사용하게 됩니다.
해결책: 올바른 CMAKE_OSX_SYSROOT 설정
상황을 해결하려면, SDK 헤더에 대한 적절한 경로를 수동으로 지정하는 것이 중요합니다. 다음 단계를 수행하면 됩니다.
set(CMAKE_OSX_SYSROOT /sdk/path)
또는 CXX 컴파일러에 대해 -isysroot 플래그를 직접 설정할 수 있습니다.
set(CMAKE_CXX_FLAGS "[...] -isysroot /sdk/path")
결론
CMAKE_OSX_SYSROOT의 잘못된 설정을 해결하면 관련 오류를 성공적으로 해결할 수 있습니다.
위 내용은 Catalina로 업그레이드한 후