EricaZZ 2018-08-31 01:49 采纳率: 50%
浏览 1241
已采纳

VS2017+Qt5.9.4,moc文件Link出错

最近使用VS2017+Qt5.9.4运行一个老版本Qt4.8.5的程序,带Ui。出现大量无法解析的外部符号错误,例如:无法解析的外部符号 "protected: virtual bool __cdecl QLabel::focusNextPrevChild(bool)" (?focusNextPrevChild@QLabel@@MEAA_N_N@Z)

已经尝试的解决方法,重新生成QT5.9.4的moc文件替换掉原来老的moc文件,加载进VS工程,重新生成解决方案,仍旧出现无法解析的命令,关于UI界面的所有类如QLabel,QWidgets,QRadioButton等均报错,无法解析的外部符号。

各种path路径均没有错误。使用Debug X64编译。

求助,怎么解决。

  • 写回答

1条回答 默认 最新

  • 白色一大坨 2018-08-31 01:56
    关注

    正好用过这两款qt,4.8和5.x的qt有很多地方是不一样的,包括接口声明甚至是头文件都有差别,你这样直接升级,肯定会有问题,建议你还是查询一下两个库的区别,针对性的改一下接口;
    我们公司之前要把4.8的改成5.7也费了很大劲,这不是说什么技术问题,单纯就是两个库之间版本上存在差异造成的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?