1

ここでシナリオ:

C/++ で美しいソフトウェア ライブラリ/モジュールを作成します。

ここで、新しいユーザーがこのライブラリ/モジュールを簡単に使用できるようにしたいと考えています。

そのため、すべてのインクルード設定、コンパイラ フラグ、リンカー設定が正しく設定された IDE プロジェクト ファイルを提供する必要があります。

Linux (32 ビット & 64 ビット)、Windows (32 ビット & 64 ビット)、Mac (32 ビット & 64 ビット)、CodeBlocks、Eclipse CDT、KDevelop3、 CodeLite、Microsoft Visual Studio など。

(インクルード ファイルとライブラリ ファイルへのすべてのパスと、すべてのコンパイラ フラグがわかっていると仮定します。たとえば、ダウンロード可能な SDK の静的パスを介して)

したがって、このライブラリを使用したいユーザーは、次のことを行う必要があります。

  • ライブラリ/モジュールをインストールする
  • 適切なプロジェクト ファイルを選択します (ユーザーの OS と IDE によって異なります)。
  • コーディングを開始
  • (すべてのインクルード設定、コンパイラ フラグ、リンカー設定は、プロジェクト ファイルで既に正しく設定されています)
  • (ユーザーがインクルード設定、コンパイラ フラグ、リンカー設定を手動で設定する必要はありません)

既知のインクルード設定、コンパイラ フラグ、リンカー設定から、このようなプロジェクト ファイルを簡単に生成するにはどうすればよいでしょうか。

私はすでに CMake を見てきました (これは最終目標に非常に近いものです) が、IDE プロジェクト ファイルに追加の CMake フォルダーを作成し、可能なサンプル ソースをビルド ディレクトリにコピーしません。(CMake フォルダーを使用せずに、ソース ファイルをビルド フォルダーにコピーすることで、CMake にプロジェクト ファイルを生成させることは可能でしょうか?)

4

1 に答える 1

3

(すべてのインクルード設定、コンパイラ フラグ、リンカー設定は、プロジェクト ファイルで既に正しく設定されています)

(ユーザーがインクルード設定、コンパイラ フラグ、リンカー設定を手動で設定する必要はありません)

プロジェクトに依存関係がない場合にのみ可能です。そうしないと、deps のライブラリとヘッダーがユーザー マシンのどこにあるかを知ることができません。

CMake はまさにこのために作成されました - 依存関係を見つけてプロジェクト ファイルを生成します。

ただし、IDE プロジェクト ファイルに追加の CMake フォルダーが作成されます。

バイナリ dir について話している場合は、プロジェクト dir である必要はなく、どこにでも配置できます。

また、可能なサンプル ソースをビルド ディレクトリにコピーしません。

configure_file関数を使用するか、実行することで可能${CMAKE_PROGRAM} -E copyです。

于 2012-09-11T03:15:23.810 に答える