我正在尝试将 Qt 集成到我的项目中,尤其是 QTimer。
因此,我一直在尝试用cmake生成moc文件:
set(MOC_FILES
${CMAKE_CURRENT_SOURCE_DIR}/../headerfile.h
)
set(HEADER_FILES
...
${MOC_FILES}
)
...
ivw_qt_wrap_cpp(MOC_FILES ${MOC_FILES})
#--------------------------------------------------------------------
# Create module
ivw_create_module(${SOURCE_FILES} ${SHADER_FILES} ${MOC_FILES} ${HEADER_FILES})
因此它创建了一个文件 moc_headerfile.cpp_parameters
,但该文件应该是 moc_volumeraycaster.cpp
。
文件内容是这样的:
-DINVIWO_ALL_DYN_LINK
-DGLM_SHARED_BUILD
-DWIN32
-o
C:/../moc_headerfile.cpp
C:/..headerfile.h
有什么想法吗?
最佳答案
您不应该使用相同的变量作为 qt_wrap_cpp
的输入和输出。
您可以使用 AUTOMOC
摆脱它:
set(SOURCE_FILES
...
${CMAKE_CURRENT_SOURCE_DIR}/../headerfile.h
)
...
set(CMAKE_AUTOMOC ON)
#--------------------------------------------------------------------
# Create module
ivw_create_module(${SOURCE_FILES} ${SHADER_FILES} ${HEADER_FILES})
关于c++ - CMake 与 Qt : moc creates . cpp_parameters 结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40743198/