これは私が生成を開始したときのものです:
iMac:IXCSoftswitch alex$ /usr/bin/cmake -G Xcode .
-- CMAKE_SOURCE_DIR = /Users/alex/Desktop/ixc-v/IXCSoftswitch, CMAKE_BINARY_DIR = /Users/alex/Desktop/ixc-v/IXCSoftswitch
CMake Error at CMakeLists.txt:25 (MESSAGE):
Binary and source directory cannot be the same
-- Configuring incomplete, errors occurred!
どうすれば修正できますか?私はcmakeが初めてなので、サンプルを高く評価しています。
CMakeは out-of-source ビルドを生成するために使用されます。
ここでの考え方は、コンパイル中に作成されたファイルと元のソースファイルを混在させないことです。実際には、通常、新しい空のビルドディレクトリからCMakeを実行し、ソースディレクトリへのパスを引数として指定します。
cd IXCSoftswitch
mkdir build
cd build
cmake -G Xcode ..
CMakeによって生成されたすべてのファイル(lot)は、ソースディレクトリはそのままで、build
サブディレクトリに移動します。ビルドアーティファクトのクリーン。
アウトソースビルドの概念は最初は奇妙に思えるかもしれませんが、実際に慣れると実際には非常に便利な方法です。
プロジェクトディレクトリのルートから。
cmake -G Xcode -H. -B_build
これは上記の答えに似ています。ただし、ソースビルド外を手動で管理しています。 -Bはターゲットビルドディレクトリを設定します(たまたま_buildを好む)。 -Hを調べて再確認しましたが、見つかりませんでした。メモリが提供される場合、CMakeLists.txtが存在する場所を指定します。
このコマンドは、.sh/.batファイル(依存)に保存します。このようにして、新しい人が簡単に見つけることができるルートにプロジェクトをビルドするスクリプトを保持できます。