C++ 使qt忽略特定的头文件包括文件
我有一个正在运行的qt项目。出于构建目的,我使用waf构建工具。要从waf启动并运行同一个项目,我需要添加C++ 使qt忽略特定的头文件包括文件,c++,qt,waf,moc,C++,Qt,Waf,Moc,我有一个正在运行的qt项目。出于构建目的,我使用waf构建工具。要从waf启动并运行同一个项目,我需要添加 #include "file.moc" 在某些文件的末尾,以避免未定义的引用。但如果这些包含在qt中没有注释,我将无法找到文件错误。如何使qt忽略某些文件包含。我想这样的事情应该会奏效 #ifndef Q_MOC_RUN #include "file.moc" #endif 由于提供的信息有限,我只能说明waf可以做什么: 您可以包括moc文件或未处理的文件 示例包含在以下位
#include "file.moc"
在某些文件的末尾,以避免未定义的引用。但如果这些包含在qt中没有注释,我将无法找到文件错误。如何使qt忽略某些文件包含。我想这样的事情应该会奏效
#ifndef Q_MOC_RUN
#include "file.moc"
#endif
由于提供的信息有限,我只能说明waf可以做什么: 您可以包括moc文件或未处理的文件 示例包含在以下位置的分布式源代码中: 子目录:
- 操场/慢车/
- 演示/qt4/
由于提供的信息有限,我只能说明waf可以做什么: 您可以包括moc文件或未处理的文件 示例包含在以下位置的分布式源代码中: 子目录:
- 操场/慢车/
- 演示/qt4/
你应该更具体一点。如果您必须手动包含
moc
文件,则可能您已经做错了什么。问题是。。为了使代码在QT中运行,我必须对moc文件中包含的内容进行注释。但是要使用WAF运行相同的代码,我必须取消注释它们。可能是您在使用WAF
构建时没有运行moc
编译器吗?是的,WAF运行moc,在输出中我可以看到使用moc生成的moc文件。您应该更具体一点。如果您必须手动包含moc
文件,则可能您已经做错了什么。问题是。。为了使代码在QT中运行,我必须对moc文件中包含的内容进行注释。但是要使用WAF运行相同的代码,我必须取消注释它们。可能是您在使用WAF
构建时没有运行moc
编译器吗?是的,WAF运行moc,在输出中,我可以看到使用MOCI生成的moc文件。当程序从qt运行时,MOCI正在寻找一种避免包含的方法。如果您包含您的cpp文件并使用第一个示例代码段,应该可以。完全不需要moc包括。无论哪种方式,都要发布准确的错误消息。我一直在寻找一种方法,以避免在从qt运行程序时出现包含。如果包含cpp文件并使用第一个示例代码段,就可以了。完全不需要moc包括。无论哪种方式,都要发布准确的错误消息。
def options(opt):
opt.load('compiler_cxx qt4')
def configure(conf):
conf.load('compiler_cxx qt4')
conf.load('slow_qt4')
def build(bld):
bld(
features = 'qt4 cxx cxxprogram',
uselib = 'QTCORE QTGUI QTOPENGL QTSVG',
source = 'some.cpp files.cpp',
includes = '.',
target = 'dummy',
)
def options(opt):
opt.load('compiler_cxx qt4')
def configure(conf):
conf.load('compiler_cxx qt4')
def build(bld):
bld(
features = 'qt4 cxx cxxprogram',
uselib = 'QTCORE QTGUI QTOPENGL QTSVG',
source = 'some.cpp files.cpp',
target = 'dummy',
includes = '.')
)