bfd.h aurait dû inclure libiberty / ansidecl.h dans Ubuntu 14.04?

23

Le paquet binutils semble avoir été modifié, car il inclut le répertoire de libiberty.ha été déplacé vers /usr/include/libiberty, il est donc possible qu'une erreur soit incluse dans bfd.hconcernant ansidecl.h.

Obtenir ces erreurs de compilation lors de l'utilisation des utilitaires de suivi binutils

/usr/include/libiberty/libiberty.h: In function ‘basename’:
/usr/include/libiberty/libiberty.h:110:38: error: expected declaration specifiers before ‘ATTRIBUTE_RETURNS_NONNULL’
 extern char *basename (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1); 
                                      ^
/usr/include/libiberty/libiberty.h:121:45: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ATTRIBUTE_RETURNS_NONNULL’
 extern const char *lbasename (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1); 
                                             ^
/usr/include/libiberty/libiberty.h:126:49: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ATTRIBUTE_RETURNS_NONNULL’
 extern const char *dos_lbasename (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1);
                                                 ^
/usr/include/libiberty/libiberty.h:132:50: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ATTRIBUTE_RETURNS_NONNULL’
 extern const char *unix_lbasename (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1);

En changeant bfd.hpour inclure /usr/include/libiberty/ansidecl.h, tout s'est bien passé dans ma compilation.

S'il vous plaît, des conseils pour ce problème? Merci.

Eduardo Abinader
la source

Réponses:

1

Tel que rapporté par Eduardo Abinader (l'auteur de la question) et Shaun Jackman comme Bug 58689 et MSG 00135 respectivement, concluant des données échangées ...

C'est un problème causé par une installation de bibliothèque plus ancienne sur le système Ubuntu, je suppose que ce n'est ni Ubuntu ni binutils, mais cela ressemble à un problème de mise à jour du système. La solution est incluse dans la question elle-même.




PS: Mais, l'essentiel est que nous avions une réponse à l'époque et maintenant. Plus de détails peuvent être trouvés sur les liens! Veuillez améliorer cette réponse si nécessaire. :)

Novice
la source