Qt 编译错误(用vs2015编译)

基本表现:

1>InitializeBuildStatus:
1>  正在对“release\filter_meshing.unsuccessfulbuild”执行 Touch 任务。
1>CustomBuild:
1>  MOC meshfilter.h
1>  系统找不到指定的路径。
1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): error MSB6006: “cmd.exe”已退出,代码为 3。
1>
1>生成失败


原因:使用了Q_OBJECT宏,但是MOC.exe的path没有设置正确,导致的问题。


解决方案:

1、选择菜单栏【工具】【选项】【项目和解决方案】【生成并运行】,选择【msbuild项目生成项目详细信息】选项,下拉列表中选择详细,即可查看编译的详细过程, 目测楼主是因为MOC.exe不在系统path路径中或者meshfilter.h不在包含路径中。

2、具体编译:

1)右键单击.h文件选择properties,Custom Build Step->General,在command line里输入用moc.exe编译.h文件并生成.cpp的命令

比如,假设moc.exe所在路径为C:\Qt\bin,并且在.h目录下建立了一个moc文件夹用于存放生成的.cpp文件,则需要在commond line里输入

C:\Qt\bin\moc.exe "$(InputPath)" -o "$(InputDir)\moc\moc_$(InputName).cpp"

2)在outputs里输入$(InputDir)\moc\moc_$(InputName).cpp

3)编译.h文件

4)将moc文件夹里的.cpp文件加入source files

5)编译工程


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值