Qt 未找到表\u-moc.ads

Qt 未找到表\u-moc.ads,qt,ada,Qt,Ada,我在GNAT GPL 2012(20120509)中使用gcc(gcc)4.5.4 20120510 qtada-gpl-3.2.0-20120708-3871-qt4.8.2-2.exe安装程序中的qtada。 我试图从“.\GNAT\2012\examples\qtada\sql\cached\u table”编译示例,但它说“table\u editors-moc.ads not found” 错误来自以下语句: with Table_Editors.MOC; pragma Warning

我在GNAT GPL 2012(20120509)中使用gcc(gcc)4.5.4 20120510 qtada-gpl-3.2.0-20120708-3871-qt4.8.2-2.exe安装程序中的qtada。 我试图从“.\GNAT\2012\examples\qtada\sql\cached\u table”编译示例,但它说“
table\u editors-moc.ads not found

错误来自以下语句:

with Table_Editors.MOC; pragma Warnings (Off, Table_Editors.MOC);
--  Child package MOC must be included in the executable.

我在哪里可以找到包含“table_editors-MOC.ads”和另一个MOC文件的“子包MOC”?

我很惊讶QtAda已经将其示例安装在
\GNAT\2012\examples
;从GNAT在这台Mac上的设置方式来看,我希望
\GNAT\2012\share\examples

然而。。我怀疑QtAda的文件系统布局非常复杂,您需要使用“”来进行构建。我希望在与示例代码相同的目录中有一个
.gpr
文件(如果没有,我也无能为力);如果是这样,假设它被称为
cached_table.gpr
,然后在命令窗口中说

gnatmake -p -P cached_table.gpr
或(以下简称)


我不知道Qt或QtAda,但快速搜索表明Qt使用元对象编译器(metaobjectcompiler,MOC)从宏自动生成源代码。是否应该生成您的Table_Editor.MOC?

我认为您是对的
Makefile.am
显示正在生成它们。所以,在
配置过程中可能出现了一些问题?谢谢egilhh,是的,你是对的,MOC是自动生成的,安装qt时可能是我的错误,示例文件夹中缺少一些文件,我必须手动创建chached_table_MOC.gpr文件,经过一些清理和构建后,示例工作很好谢谢simon,但在访问了一些网站后,我创建了一个名为“gpr”的文件夹,并在其中手动更改了_table_moc.gpr,然后一切正常,是的,在安装过程中可能会出错。
gprbuild -p -P cached_table.gpr