GNU/Linux >> Linux の 問題 >  >> Linux

GCC ビルドの問題 (#include_next limits.h)

STLport 5.1.5 でのコンパイルで問題に直面していましたが、STLport 5.2.0 で問題が修正されたようです。この問題は、STLport リリース ノートに記載されています。 STLport 5.2.1 のコピーを取得した後、コンパイルは問題なく成功しました。


クロスコンパイル中にこの問題が発生しました。 「makedepend」を実行すると、次の割り当てからわかるように、Makefile は makedepend プログラムを呼び出します。

MAKEDEPPROG=makedepend

makedepend は、/usr/include で始まるいくつかのデフォルトのインクルード ディレクトリのみを検索します

#include_next以来 ディレクティブは、指定されたインクルード ファイルの次に見つかったインスタンスを検索パスに含めることを意味します。別のインスタンスが見つからない場合、これは失敗します。

私にとっての解決策は、最初にクロスコンパイラのインクルード ディレクトリを検索するように makedepend に指示することでした。 MAKEDEPPROG を変更してこれを行いました -I を含める割り当て ディレクティブ:

MAKEDEPPROG=makedepend -I < path/to/cross-compiler/include-fixed >

makedepend プログラムについて読むことをお勧めします (これについては、以前は何も知りませんでした)。たとえば、makedepend が環境検索パスを使用しないことは明らかではありませんでした。 -I ディレクティブは、指定された検索パスを makedepend のデフォルト パスの前に置きます。


Linux
  1. rpmパッケージをビルドする方法

  2. -lmが見つかりませんか?

  3. DNSルックアップの制限

  1. Linux で GCC のデフォルトのインクルード パスを追加するには?

  2. GCC のデフォルトのインクルード ディレクトリとは?

  3. gccを使用して必要なCライブラリを含める方法は?

  1. gradle:コマンドが見つかりません

  2. Mac OS X 上の Linux のクロスコンパイラ?

  3. Makefile にスタティック ライブラリを含める方法