0

Boost-buildを使用してプロジェクトをWindows(msvcを使用)からLinux(gccを使用)に移植し、クロスコンパイルされたLinux(これもgccを使用)にさらに移植しています。3つのプラットフォームすべて(Windows、ネイティブLinux、クロスコンパイルされたLinux)を長期的にサポートしたいと考えています。

新しい「usinggcc...」行を追加するだけで、クロスコンパイルの基本的なサポートを追加しました。ただし、このプロジェクトでは、ビルドごとに新しくビルドされるコード生成ビルドツールを使用しています。現在のクロスコンパイルの基本的なサポートでは、これらのビルドツールはクロスビルドされているため、ビルドマシンでは実行されません。要するに、これらは常にネイティブに構築されている必要があり、これをどのように指定するのが最善かわかりません。このシナリオのベストプラクティスはありますか?

Jamfilesの構成などについては確かに詳しく説明できますが、短いメモから始めることにしました;>

助けてくれてありがとう!

4

2 に答える 2

0

私が最初に試みることは、ツールを構築するためのホストツールセットを強制することです。

exe mytool : mytool.cpp
           : <host-os>linux:<toolset>gcc
;
于 2012-10-21T16:51:01.397 に答える
0

ループを閉じるために、ブーストビルドのメーリングリストでもこの質問をしました。私のために働いた答えは:

http://article.gmane.org/gmane.comp.lib.boost.build/25469

関連する問題:上記を実行すると、静的ライブラリが「行き過ぎ」に伝播されるブーストビルドの明らかにバグに遭遇しました。私はここで答えを使用してこの2番目の問題を回避しました:

http://article.gmane.org/gmane.comp.lib.boost.build/25484

于 2012-10-26T19:13:24.527 に答える