关于在vs2010中编译Qt项目时出现“无法解析的外部命令”的错误
![作者头像](https://ask.qcloudimg.com/random-avatar/5949782/qv8v7lupjc.png)
用CMake将Qt、VTK和ITK整合后,打开解决方案后添加新类时运行会出现“n个无法解析的外部命令”的错误。
原因是新建的类未能生成moc文件,解决办法是:
1.右键 要生成moc文件的.h文件,打开属性->常规->项类型改为自定义生成工具。
2.在新生成的选项中,填上相关内容:
![](https://ask.qcloudimg.com/http-save/yehe-5949782/w3tjoe6dt4.png)
具体如下:
命令行:"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp"
说明:Moc%27ing ImageViewer.h... //.h文件填要编译的。
输出:.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp
附加依赖项:$(QTDIR)\bin\moc.exe;%(FullPath)
3.此时右键 .h文件编译,即可在GeneratedFiles\debug文件夹下生成moc文件,拖入Grenerated目录下,即可。
关于moc文件,查看: qt中moc的作用
简单来说:moc是QT的预编译器,用来处理代码中的slot,signal,emit,Q_OBJECT等。 moc文件是对应的处理代码,也就是Q_OBJECT宏的实现部分。
XX.ui文件生成ui_XX.h:
当前路径命令行输入uic XX.ui -o ui_XX.h
社区
活动
资源
关于
腾讯云开发者
扫码关注腾讯云开发者
领取腾讯云代金券
热门产品
热门推荐
更多推荐
Copyright © 2013 - 2024 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2024 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有