3

ファームウェアをopenwrtでクロスコンパイルしましたが、ファイルの名前が変でlibbfd.h、コンパイルに失敗しました。これまでに見たことがあります。83libbfd.h行目:

79 #define BFD_HOST_64BIT_LONG @BFD_HOST_64BIT_LONG@
80 #define BFD_HOST_64BIT_LONG_LONG @BFD_HOST_64BIT_LONG_LONG@
81 #if @BFD_HOST_64_BIT_DEFINED@
82 #define BFD_HOST_64_BIT @BFD_HOST_64_BIT@
83 #define BFD_HOST_U_64_BIT @BFD_HOST_U_64_BIT@
84 typedef BFD_HOST_64_BIT bfd_int64_t;
85 typedef BFD_HOST_U_64_BIT bfd_uint64_t;
86 #endif

hereBFD_HOST_U_64_BITは と定義されてい@BFD_HOST_64_BIT@ます。"@" の意味は、テスト ファイルでテストしましたが、コンパイルできません。誰でも私を助けることができますか?どうも!

4

2 に答える 2

0

この@文字は、主に元の ASCII 標準の一部ではないため、C 標準実行文字セットの一部ではありません。

C への実装の拡張機能の一部でない限り@、C コンパイラが認識する前に s を削除する必要があります。

于 2013-08-20T00:18:03.103 に答える