Пакет binutils, кажется, изменен, так как он включает каталог libiberty.h
, перемещен в /usr/include/libiberty
, таким образом, возможно неправильное включение в bfd.h
относительно ansidecl.h
.
Получение этих ошибок компиляции при использовании утилит трассировки 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);
Изменив bfd.h
для включения /usr/include/libiberty/ansidecl.h
, все прошло нормально в моей компиляции.
Пожалуйста, есть какие-нибудь советы по этому вопросу? Благодаря.
Как сообщил Eduardo Abinader (автор вопроса) и Shaun Jackman как Ошибка 58689 и СООБЩЕНИЕ 00135 соответственно, завершающий от переданных данных...
Это - проблема, вызванная более старой установкой библиотеки в системе Ubuntu, я предполагаю, что это не отказ ни Ubuntu, ни binutils, но похоже на Системную проблему Обновления. Решение включено рассматриваемое само.
PS: Но, главное, у нас был ответ тогда и теперь. Больше деталей может быть найдено на Ссылках! Улучшите этот ответ при необходимости.:)