문서 ID: 000083955 콘텐츠 형태: 문제 해결 마지막 검토일: 2012-09-11

Small C 라이브러리 플래그로 컴파일된 Nios II 소프트웨어 프로젝트에 Newlib assert() 기능을 사용할 수 있습니까?

환경

BUILT IN - ARTICLE INTRO SECOND COMPONENT
설명

Newlib assert() 함수는 Nios® II 소형 C 라이브러리에서 지원하지 않는 fiprintf 함수를 호출합니다.  그러나 fiprintf 대신 fprintf를 사용하도록 수정하여 assert()를 사용할 수 있습니다.  이 작업을 수행하려면 /bin/nios2-gnutools/src/newlib/newlib/libc/stdlib/assert.c 파일을 시스템 라이브러리 프로젝트에 복사합니다.  그런 다음 대신 fprintf를 호출하도록 호출을 fiprint로 수정합니다.  즉, 다음 코드를 변경합니다.

(void)fiprintf(stderr, "어설션 \%s\ 실패: 파일 \%s\, line %d\n", failedexpr, 파일, 라인);

를 읽어야 합니다.

(void)fprintf(stderr, "어설션 \%s\ 실패: 파일 \%s\, line %d\n", failedexpr, 파일, 라인);

그런 다음 수정된 assert.c 파일을 저장하고 프로젝트를 다시 컴파일합니다.  이제 컴파일러가 라이브러리 버전 대신 assert.c의 로컬 복사본을 선택합니다.

관련 제품

이 문서는 다음 항목에 적용됩니다. 1 제품

인텔® 프로그래밍 가능 장치

이 페이지의 콘텐츠는 원본 영어 콘텐츠에 대한 사람 번역 및 컴퓨터 번역의 조합으로 완성되었습니다. 이 콘텐츠는 편의와 일반적인 정보 제공을 위해서만 제공되었으며, 완전하거나 정확한 것으로 간주되어선 안 됩니다. 이 페이지의 영어 버전과 번역 간 모순이 있는 경우, 영어 버전이 우선적으로 적용됩니다. 이 페이지의 영어 버전을 확인하십시오.