我正在尝试使用Windows 7上的Visual Studio 2010编译器在Qt中编译一个小测试应用程序basic layout example。
我正在使用cmake(2.8.4)和nmake来构建示例,但它无法生成moc文件。 这会导致编译错误:
Cannot open include file: 'dialog.moc': No such file or directory.
我的CMakeLists.txt中应该启用moc文件生成的规则是:
set(all_SOURCES main.cpp dialog.cpp)
QT4_AUTOMOC(${all_SOURCES})
为什么没有生成moc文件的任何想法或解决此问题的提示?
谢谢!
答案 0 :(得分:2)
收集您需要的所有标题,将这些标题传递给qt4_wrap_cpp,然后将这些文件添加到您的库/可执行文件中。
FIND_PACKAGE(Qt4 REQUIRED)
include(${QT_USE_FILE})
set (FOO_MOC_HEADERS foo.h)
qt4_wrap_cpp (FOO_MOC_OUTFILES ${FOO_MOC_HEADERS})
add_library (foo SHARED ${FOO_SOURCE_FILES} ${FOO_MOC_OUTFILES})