1

boost 1.46 にある最新バージョンの boost-build を使用しています。main.cppどちらが と に依存するかを考えるa.hb.h、boost-build の依存関係を自動検出する機能を使用して、私の jam ファイルは単純です

exe my_prog : main.cpp ;

しかし、実装ファイルがある場合b.cpp、オブジェクトb.oは生成されず、リンクもされません。ビルド スクリプトを最小限にして、新しいファイルを追加するたびに微調整する必要がないようにしたいと思います。では、どうすればこれを自動的に行うことができますか?

本当の意図と私が求めていたものを反映するように編集されました。

4

1 に答える 1

1

これが機能しない理由はありますか?

exe my_prog : main.cpp b.cpp ;

思い通りにそれを行うことは、特にブーストビルドを初めて行う人にとっては、苦痛で不快に聞こえます。さらに、cppではなくヘッダーのみが必要な場合もあります。

コードが完璧に整理されていて、現在のディレクトリ内のファイルのみが必要な場合は、すべてのcppファイルを簡単に取得できます。

exe my_prog : [ glob *.cpp ] ;

(globには、エディターが作成する可能性のあるバックアップ/リカバリーファイルをフィルターで除外できるようにする他の引数があります。また、子ディレクトリーに派生する他のバージョンのglobがあります。)

複数の最終実行可能ファイルに必要な複数のcppファイルがある場合は、libルールを使用してライブラリを作成し、それを実行可能ファイルのソースの1つとして使用することをお勧めします。

lib blib : b.cpp ;
exe my_prog : main.cpp blib ;
于 2011-02-25T17:06:28.070 に答える