2011-10-20 9 views
4

私は同じビルドルートを共有する複数のプラットフォームを持っています。彼らはビルドルートパッケージが異なります。 buildrootにツールチェーンを一度しかビルドしないように設定して、パッケージとターゲットだけをビルドする方法がありますか?メイククリーンを行うことなく、Buildrootツールチェーン - 一度だけビルドする必要があります

例の描写(そのツールチェインが損なわれていない):

1)プラットフォームAはbuildrootが構築されると(私は)プラットフォームbuildrootコンフィギュレーションファイルを使用していますターゲットのrootfsの/ etcにあるいくつかのconfファイルを更新します。 2)プラットフォームBはconfファイルを必要としませんが、make cleanは実行されないため(プラットフォームBのbuildroot設定ファイルが使用されていますが)、不要な/ etc /がターゲットに存在します。 make cleanを行った場合、toolchainも再構築する必要があります。

ありがとうございます。

答えて

4

はい。これに関する未完のスライドについては、http://free-electrons.com/~thomas/pub/using-buildroot-real-project.pdfを参照してください。

Cross-compiling toolchain(Buildrootまたはcrosstool-NG)を一度ビルドしてから、この「Build-Cross-Compiling Toolchain」を「外部ツールチェーン」として使用するようにBuildrootに指示することができます。このようにして、Buildrootはその既存のコンパイラを使用し、Buildrootを完全に再構築するたびに、完全なツールチェーン構築時間を節約します。

これは、合理的に最近のバージョンのBuildroot、つまりおそらく1年未満でのみ動作することに注意してください。

+0

私は外部ツールチェーンを意味するbuildroot-2009.01で同じ設定作業をしようとしています。ビルド中にいくつかのエラーが発生することになります。古いビルドルートでこの作業を行う方法はありますか? – lxusr

+0

uclibc.mkに問題がありました。 BR2_TOOLCHAIN_SOURCEのifにendifがありませんでした。この問題はbuildroot-2009.02で修正されています。 buildroot-2009.01でEXTERNAL TOOLCHAINを使用したい人は、buildroot-2009.01/toolchain/uClibcフォルダの下のuclibc.mkにendif @の最後を置いてください。ありがとう。 – lxusr

関連する問題