2017-05-17 6 views
0

VPPクロスコンパイルbuildrootプロジェクトに統合されながら、次のエラーで失敗します。ERROR:クロスコンパイルで使用される危険なヘッダ/ライブラリパス「-Iは/ usr /含ま

ERROR: unsafe header/library path used in cross-compilation: '-I/usr/include 

を持っているように見えますoldincludedir非GNUツールチェーンのエクスポートが有効になっているため、設定処理中にこの組み込みが生成されます。値のconfigure内oldincludedir世代を除外する方法や、それを変更する方法

>> >> This error appear if one of the following paths is used during the 
>> >> cross-compilation: 
>> >> "/lib" 
>> >> "/usr/include" 
>> >> "/usr/lib" 
>> >> "/usr/local/include" 
>> >> "/usr/local/lib" 

の代わり:

問題はbuildrootプロジェクトを説明しhereとしてチェック偏執的に危険なパスのオプションを追加したら、かなり一般的であるように思わ:includedir以下変数と同様に構成される

oldincludedir='/usr/include' 
includedir='${prefix}/include' 

?偏執的な危険なパスに関する

+0

クイックアップデートの場合、ハードコードされたパスを含むファイルは、https://github.com/vpp-dev/vpp/blob/master/build-data/packages/vpp.mkのようです。パスはライン24にハードコードされています –

答えて

1

詳細な説明はhereを発見されチェックが、リンクはそのコピーがあまりにもこの答えに掲載されます非常に一時的であるように思わ:

ツールチェーン-外部:危険なパスについて警告する機器のラッパーを彼らはつまり、ビルドに漏洩するホストヘッダーやライブラリをリードするパス 、危険なヘッダやライブラリのパスが使用されている ユーザーに警告:

CodeSourcery社のツールチェーンは非常に興味深い機能を持っています。

このコミットは外部のツールチェーン ラッパーにも同様の機能を追加しているので、すべての外部ツールチェーンで使用でき、必要に応じて も調整できます。デフォルトでは、外部のツールチェーンラッパー は、今のような警告を与える:

arm-linux-gcc: WARNING: unsafe header/library path used in cross-compilation: '-I /usr/foo' 
    arm-linux-gcc: WARNING: unsafe header/library path used in cross-compilation: '-L /usr/bleh' 

をしかし、コンパイルは成功し続けています。このメッセージの発生を検索するには、彼のビルドログに を簡単にgrepすることができます。 BR_COMPILER_PARANOID_UNSAFE_PATHが非空の値に 環境で定義されている場合

必要に応じて、外部のラッパーが出代わり エラーになり、コンパイルを中止します。

関連する問題