미리 컴파일 된 헤더를 CMake (2.8.12.1)의 출력에 지정하는 방법 AUTOMOC?Qt5, CMake, AUTOMOC 및 미리 컴파일 된 헤더
지금까지 CMakeLists.txt에 나는이 두 별도로 시도했다 :
set(AUTOMOC_MOC_OPTIONS "-bstdafx.h")
set(AUTOMOC_MOC_OPTIONS "-fstdafx.h")
에만 moc_xxx.cpp 파일이 들어있는 프로젝트 (project_automoc.cpp)를 구축 생성 된 AUTOMOC 출력 :
/* This file is autogenerated, do not edit*/
/// <- stdafx.h should be here ?!?!
#include "moc_widget_fps.cpp"
#include "moc_widget_sysevents.cpp"
, 즉 Q_OBJECT가있는 클래스가있는 경우 빌드 디렉토리에 해당 moc_file.cpp가 있습니다. 이 파일들은 내 (비주얼 스튜디오) 프로젝트에 추가되지 않고, 그 안에 모든 moc'ed cpp 파일을 포함하는 하나의 project_automoc.cpp 파일이 있습니다. 내 프로젝트는 미리 컴파일 된 헤더를 사용하므로이 파일에는 stdafx.h가 포함되어야합니다. VS에있는 해당 파일에 /FIstdafx.h를 직접 추가하면 컴파일됩니다. – Pencheff
moc_file.cpp를 만들 때 moc 명령 줄에 적절한 -b 및 -f 옵션이 포함되어 있는지 확인하십시오. – steveire
@steveire cmake에서 moc 명령 줄에 어떻게 영향을 줍니까? –