bfd.hはUbuntu 14.04にlibiberty / ansidecl.hを含めるべきでしたか?


23

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.hinclude /usr/include/libiberty/ansidecl.hに変更することで、私の編集ですべてがうまくいきました。

この問題に関するヒントはありますか?ありがとう。

回答:


1

報告されているようにエドゥアルドAbinader(質問の作者)とショーン・ジャックマンとしてバグ58689MSG 00135交換されるデータから結論、それぞれ...

これは、Ubuntuシステムへの古いライブラリのインストールが原因で発生する問題です。Ubuntuもbinutilsの問題でもないが、システムアップデートの問題のようです。解決策は問題自体に含まれています。




PS:しかし、主なことは、当時の答えがありました。詳細はリンクにあります!必要に応じてこの回答を改善してください。:)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.