Notes de version de Solaris 9 9/05

Bogues standard

Les bogues standard suivants concernent la version Solaris 9 9/05.

La compilation des applications UNIX 98 ou UNIX 03 qui comprennent le fichier d'en-tête dflcn.h échoue (6295971)

Le fichier d'en-tête dflcn.h affiche dans /usr/include/sys/auxv.h des symboles qui ne sont pas autorisés dans UNIX(R) 98 ou UNIX 03. Si vous compilez des applications UNIX 98 ou UNIX 03 qui incluent ce fichier d'en-tête, le compilateur génère des erreurs de syntaxe. Par conséquent, la compilation n'est pas exécutée.

Vous pouvez éviter ces erreurs en utilisant des compilateurs autres que les utilitaires de compilation c89 ou c99. Toutefois, les applications compilées ne seront pas conformes à UNIX 98 ou UNIX 03. De plus, même si vous utilisez l'utilitaire de compilation cc, la compilation échoue également si l'indicateur -D_XOPEN_SOURCE est défini.

Par exemple, si vous compilez une application qui utilise l'indicateur de compilation -D_XOPEN_SOURCE=600 , le message d'erreur suivant s'affiche :


"/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

Solution : Appliquez l'un des patchs suivants :