baysmith가 말하듯이 소스 디렉토리를 깨끗하게 유지하는 것이 목표라면 CMake의 "out-of-source" 빌드 기능을 사용하는 것이 좋습니다. Windows 사용자 인 경우 "바이너리를 빌드 할 위치"를 "소스 코드가있는 곳"과 다른 새 디렉토리로 설정하십시오. 유닉스에 있다면, 그것은 이런 식입니다 :
cd <source directory>
mkdir build
cd build
cmake ..
make
을 다른 디렉토리에 CMake를 실행하여 빌드의 모든 파일이 해당 디렉토리로 이동합니다, 그리고 소스는 깨끗하게 유지됩니다. (참고 : 빌드 디렉토리는 소스 디렉토리 내에있을 필요는 없습니다. 자세한 내용은 CMake wiki을 참조하십시오.)
"소스 외부"가 작동하지 않으면 하나를 찾을 수있었습니다 다른 옵션. 내 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