总结一下拿到的VS2010+Qt5.4.0项目,重新编译成VS2012+Qt5.2.1:
拿到项目之后,
1. 是要更新编译器和库,用VS2012打开sln,点“更新”。更新后,vs会自动将平台工具集更改为“v110”(之前为“v100”)。
2. 在Qt Option中重新选择设置Qt版本。并将所需要的项目转换长Qt Add-in project,在Qt Project Setting/Qt Modules中勾选上所需要的模块,比如用了网络,则要勾选上Network
3. 检查项目属性--VC++目录--包含目录 下 是否都改成了当前选择的QT版本。我的sln下有2个项目,当时是改了一个项目的目录,另一个没改,导致编译时候始终提示Qt相关的头文件找不到引用路径(报错:fatal error C1083: 无法打开包括文件:“QtCore/QString”: No such file or directory)
4. 检查项目属性--C/C++--常规下各种附加包含目录 是否包含了所需的目录。
5. 检查项目属性--链接器--附加库目录中是否包含了所需的依赖库目录
6. 检查项目属性--链接器--输入中的附加依赖项是否正确
以上三项有不对的都会导致报错:LINK : fatal error LNK1104: 无法打开文件“\.obj”
在项目更新时,发现附加依赖项被默认修改成这样,
这肯定是不对的。应该改成:
电脑里面没有:C:\ProgramFiles(x86)\MicrosoftSDKs\Windows\v7.0A\Lib\setupapi.lib。的根据实际情况修改:
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib\SetupAPI.Lib
总结:
其实过程很简单,修改Qt版本,以及各种依赖库路径。但是有路径或者版本不对的地方,就会导致各种link错误。
转载请注明原文地址: https://ju.6miu.com/read-964092.html