Solaris 9 9/05 릴리스 노트

표준 버그

Solaris 9 9/05 릴리스에 적용되는 표준 버그는 다음과 같습니다.

dflcn.h 헤더 파일을 포함하는 UNIX 98 또는 UNIX 03 응용 프로그램을 컴파일하면 실패함(6295971)

dflcn.h 헤더 파일은 UNIX(R) 98 또는 UNIX 03에서 허용되지 않는 /usr/include/sys/auxv.h의 기호를 표시합니다. 이 헤더 파일을 포함하는 UNIX 98 또는 UNIX 03 응용 프로그램을 컴파일하면 컴파일러에서 구문 오류를 생성하며컴파일이 완료되지 않습니다.

c89 또는 c99 컴파일러 유틸리티가 아닌 다른 컴파일러를 사용하여 이 오류를 방지할 수 있습니다. 그러나 컴파일된 응용 프로그램은 UNIX 98 또는 UNIX 03과 호환되지 않습니다. 더욱이 -D_XOPEN_SOURCE 플래그가 정의되어 있으면 cc 컴파일러 유틸리티를 사용해도 컴파일이 실패합니다.

예를 들어, -D_XOPEN_SOURCE=600 컴파일러 플래그를 사용하는 응용 프로그램을 컴파일하면 다음 오류 메시지가 표시됩니다.


"/usr/include/sys/auxv.h", line 45: syntax error before or at: "a_type unprotected"
"/usr/include/sys/auxv.h", line 45: warning: syntax requires ";" after last
struct/union member
"/usr/include/sys/auxv.h", line 54: zero-sized struct/union
"/usr/include/sys/auxv.h", line 54: warning: syntax error: empty declaration
"/usr/include/sys/auxv.h", line 55: warning: old-style declaration or incorrect
type for: auxv_t

해결 방법:다음 패치 중 하나를 적용합니다.