현재 C89로 작성한 프로젝트 중 하나에서 미리 정의 된 가정이있을 때 코드가 내 개발 시스템에서 실패하는 방법으로 assert()
문을 사용했습니다. 사실을 말하지 마라. 그러나 프로덕션 환경에서 어설 션 오류가 발생해도 프로그램이 중단되지 않도록 코드에 오류 처리 코드가 포함되어 있습니다.C : 프로덕트 코드에서 assert를 제거합니다.
프로젝트는 GNU Autotools를 사용하여 소스 배포를 컴파일하고 배포합니다.
지금, 제 질문은 make dist
을 실행하면 코드에서 모든 주장을 제거한 다음 배포 용 타볼을 어떻게 생성합니까? 위키 백과에 assert.h에서
이 컴파일러를 사용할 수 : 매크로는 단순히 을 정의 NDEBUG를 정의하기 위해'-DNDEBUG = 1 '플래그를 붙인다. – P0W