C++ QT:找不到moc文件
我正在尝试在QT中创建一个测试应用程序,以使用qtlib测试另一个QT应用程序的UI。我了解到,还需要使用QTEST_MAIN()宏,该宏扩展为一个简单的MAIN()方法,用于运行所有测试函数C++ QT:找不到moc文件,c++,unit-testing,qt,user-interface,C++,Unit Testing,Qt,User Interface,我正在尝试在QT中创建一个测试应用程序,以使用qtlib测试另一个QT应用程序的UI。我了解到,还需要使用QTEST_MAIN()宏,该宏扩展为一个简单的MAIN()方法,用于运行所有测试函数 QTEST_MAIN(TestAppUI) #include "testapp.moc" 我正在使用“make”编译它,在我的CMakeLists.txt中的某个地方我有 SET(TEST_APP_SRCS ui/menu/testapp.cpp ) SET(TEST_APP_SRCS_MOC_SRC
QTEST_MAIN(TestAppUI)
#include "testapp.moc"
我正在使用“make”编译它,在我的CMakeLists.txt中的某个地方我有
SET(TEST_APP_SRCS
ui/menu/testapp.cpp
)
SET(TEST_APP_SRCS_MOC_SRCS
ui/menu/testapp.hpp
)
QT4_WRAP_CPP(TEST_APP_SRCS ${TEST_APP_SRCS_MOC_SRCS})
我的问题是,在编译过程中,我遇到了这个错误。错误:testapp.moc:没有这样的文件或目录
我不知道怎么了。。。有什么想法吗 我只是想知道怎么了。我需要在目标链接库中添加${QT_库}${QT_QTTEST_库}……:)并删除#include“testapp.moc”构建过程无法从testapp.hpp创建testapp.moc。您确定“moc”实用程序在您的路径中吗?我项目中的其他文件与moc没有问题。。。我刚刚添加了这个文件,希望有一个单独的可执行文件。。。但它给了我这个错误…:(你在你的项目中添加了那个文件吗?我是说在你的
.pro
文件中??对我来说,删除“#include”[myfile].moc”同样有效。”' line@Owen,你能提到QT_库和QT_测试库变量中有什么吗?我面临着同样的问题,但如果我删除“#include file”,我会收到MyTest的vtable的未定义引用错误。如果你有2个测试文件(.cpp和.h),你必须删除.moc的include。