C++ 将Qt4移植到Qt5:未解析的外部符号
Qt5是Qt的新一代,它有一些变化 我有一个项目建设以及Qt4。我已经下载了Qt5-VisualStudio2010软件包,我正在尝试将我的项目从Qt4移植到Qt5。问题出现了 所有“包含”路径都已修复良好。但是,编译器现在报告了数百个“未解析的外部符号”(几乎所有函数调用,听起来编译器都找不到任何.lib文件)。我甚至尝试添加在Qt SDK文件夹中找到的所有.lib文件,但没有用。最基本的类和方法:QApplication::exec(…)也报告为“未解析的符号” 项目文件已更改为适合Qt5打包:C++ 将Qt4移植到Qt5:未解析的外部符号,c++,qt,linker,porting,qt5,C++,Qt,Linker,Porting,Qt5,Qt5是Qt的新一代,它有一些变化 我有一个项目建设以及Qt4。我已经下载了Qt5-VisualStudio2010软件包,我正在尝试将我的项目从Qt4移植到Qt5。问题出现了 所有“包含”路径都已修复良好。但是,编译器现在报告了数百个“未解析的外部符号”(几乎所有函数调用,听起来编译器都找不到任何.lib文件)。我甚至尝试添加在Qt SDK文件夹中找到的所有.lib文件,但没有用。最基本的类和方法:QApplication::exec(…)也报告为“未解析的符号” 项目文件已更改为适合Qt5打
myproject.pro file:
QT += widgets
有没有人对这个新版本的Qt有过类似的体验?我怀疑你不是唯一一个有这个问题的人。你看过了吗?它讨论了qt/base/bin中名为:fixqt4headers.pl的PERL脚本。这是为了修复标题。我注意到另一个链接可能会有帮助,如果这不能解决你的问题,试试看,它看起来是经过深思熟虑的。而且,我没有试过。我实际上还没有升级到Qt5。干杯 来自《qt_新手89》(): 我“意外地”解决了这个问题。我右键点击了 项目窗口中的项目文件夹,然后选择qmake。之后, 选择Run,所有错误都消失了。我不知道为什么会这样 顺便说一下 从‘ChrisW67’(): Makefile文件没有“损坏”:它与您的完全相同 左键,充满了适用于上一个Qt4的命令和路径 安装。当Qt创建者运行nmake来构建项目时,nmake做到了 不会自动重新运行qmake以生成Makefile,因为 (未触及)Makefile比生成它的pro文件更新。 这是正常和正确的make行为,但它导致了 暂停中的Qt5与预期的Qt4安装不匹配 我的话说:
是的,这真的解决了链接问题!问题实际上是,当使用Qt4创建项目时,“make”文件也与项目一起创建。当我删除Qt4、安装Qt5并由Qt5(使用新的Qt Creator)导入旧项目时,“make”文件可能已损坏。这也发生在我身上,我做了如下操作