CMAKE가 특정 조건에서 오류를 생성하도록하려면 어떻게해야합니까? 즉, 나는 다음과 같은 것을 원합니다 :
if( SOME_COND )
error( "You can't do that" )
endif()
CMAKE가 특정 조건에서 오류를 생성하도록하려면 어떻게해야합니까? 즉, 나는 다음과 같은 것을 원합니다 :
if( SOME_COND )
error( "You can't do that" )
endif()
답변:
message()
방법은 모드에 대한 선택적 인수를 가지고, 수 STATUS
, WARNING
, AUTHOR_WARNING
, SEND_ERROR
,와 FATAL_ERROR
. STATUS
메시지는 stdout으로 이동합니다. 없음을 포함한 다른 모든 메시지 모드는 stderr로 이동합니다.
SEND_ERROR
오류를 출력 하려는 경우 처리를 계속하십시오. FATAL_ERROR
CMake 처리를 종료 하려는 경우에 필요합니다.
다음과 같은 것 :
if( SOME_COND )
message( SEND_ERROR "You can't do that" )
elseif( SOME_CRITICAL_COND )
message( FATAL_ERROR "You can not do this at all, CMake will exit." )
endif()
AUTHOR_WARNING = CMake Warning (dev), continue processing
는 CMake 스크립트 디버깅에 사용되도록 제안합니다. 그냥 거친 추측입니다.
AUTHOR_WARNING
최종 사용자에게 유용하지 않지만 개발자에게 유용한 경고를 나타냅니다. 해킹 / 할 일을 수정하도록 상기 시키거나 수정해야하지만 사용자의 CMake 실행에는 영향을 미치지 않는 경고를 나타낼 수 있습니다. 그렇기 때문에 사용자는이 경고를 표시하지 않을 수 있습니다 --Wno-dev
.
AUTHOR_WARNING
?