CMake、Xcode、Unix Makefile
質問
CMake が「cmake -G Xcode」を使用して優れた xcode プロジェクト ファイルを生成できることを説明する Web ページを見つけるまで、私は古典的な Unix Makefile ジェネレーターを使用していました。そのため、ソース ディレクトリでそのコマンドを実行したところ、優れた xcode プロジェクトが得られました。これは素晴らしいことですが、いくつかの欠点に直面しており、これらに対する解決策があるかどうか疑問に思っていました。
今、Unix makefileを使用してツリーからビルドできません(ビルドディレクトリでcmake ../myprojを実行してからmakeコマンドを使用します)これはもう機能しません(プロジェクトディレクトリ内の一時ファイルが原因だと思います)
ヘッダーの一部は cmake によって生成されています (myproj.h.in は myproj.h になり、たとえばいくつかのテストに含まれています) が、取得した xcode プロジェクトでそれらのファイルが見つかりません。
xcode プロジェクトと unix makefile を組み合わせて両方を使用できるようにする方法について、良いアドバイスをいただきありがとうございます。
解決
私は(私は良い人を求めて平均値)自分で答えを見つけます:
ビルドファイルの種類ごとに2つの別々のビルドディレクトリを使用します。これは、各ビルドディレクトリには、その使用のための正しいビルドファイルと生成されたファイルがあることを確認します。
add_executable()コマンドは、ソースファイルに加えて、Xcodeで表示するために、これらのヘッダおよび生成ヘッダを含む。
他のヒント
あなたは例えば、まだ適切なXcodeプロジェクトを持っており、コマンドライン/シェルスクリプト/ Makefileのからそれを構築するためにxcodebuildを使用することができます。
xcodebuild -project MyProject.xcodeproj -target MyTarget -configuration Release