baysmithによると、ソースディレクトリをきれいに保つことが目標である場合、実際の解決方法はCMakeの"out-of-source"ビルド機能を使用することです。 Windowsの場合は、「バイナリをビルドする場所」を「ソースコードはどこにあるか」ディレクトリとは異なる新しいディレクトリに設定します。あなたがUnixを使っている場合、それはこのような何かを行く:
cd <source directory>
mkdir build
cd build
cmake ..
make
を別のディレクトリ上にCMakeを実行することにより、ビルドファイルのすべてをそのディレクトリに入ります、そして、あなたのソースがきれいなままになります。 (注:ビルドディレクトリはソースディレクトリ内にある必要はありません。
「アウトソース」が機能しない場合は、その他のオプション。私のCMake 2.8でインストールされたQt4Macros.cmake
ファイルからわかる内容に基づいて、configパラメータとしてアクセスすることはできません。ここでは、関連する行があります:
SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC})
回避策は、あなたがに構築したいサブフォルダを指定するためのディレクティブを含めるあなたのMOCのすべてを変更することです。
#include "moc/mainwindow.moc"
は私のビルドディレクトリ内
moc
ディレクトリを作成した後、何の問題の建物がなかった、と私のMOCファイルを新しいディレクトリにありました。
一般的に、ソースをきれいに保つために、アウトオブツリービルドを使用します。 http://www.vtk.org/Wiki/CMake_FAQ#Out-of-source_build_treesを参照してください。 – baysmith