Visual studio 2008 Qt中的静态链接-->;VS 2008中的链接错误

Visual studio 2008 Qt中的静态链接-->;VS 2008中的链接错误,visual-studio-2008,qt,static,linker-errors,Visual Studio 2008,Qt,Static,Linker Errors,今天我决定在Qt中进行静态链接。我用了一篇文章。第三步花了相当长的时间。当它完成后,我在VS2008中打开了我的项目,制作了Build->Clean Solution,并尝试Release。不幸的是,我得到了链接错误: 警告 LNK4098:defaultlib'libcmt.lib' 与其他LIB的使用发生冲突;使用 /NODEFAULTLIB:库 错误LNK2019:未解析的外部 符号“私有:静态结构” QString::数据QString::共享\u null“ (?共享_null@QSt

今天我决定在Qt中进行静态链接。我用了一篇文章。第三步花了相当长的时间。当它完成后,我在VS2008中打开了我的项目,制作了
Build->Clean Solution
,并尝试
Release
。不幸的是,我得到了链接错误:

警告 LNK4098:defaultlib'libcmt.lib' 与其他LIB的使用发生冲突;使用 /NODEFAULTLIB:库

错误LNK2019:未解析的外部 符号“私有:静态结构” QString::数据QString::共享\u null“ (?共享_null@QString@@0UData@1@(A) 在“公共”功能中引用: __此调用QString::QString(void)“(??0QString@@QAE@XZ)

错误LNK2019:未解析的外部 符号“私有:静态结构” QByteArray::数据 QByteArray::共享的_null“ (?共享_null@QByteArray@@0UData@1@(A) 在“公共”功能中引用: __此调用QByteArray::QByteArray(无效)” (???0QByteArray@@QAE@XZ)

错误LNK2001:未解析的外部符号 “私有:静态结构” QByteArray::数据 QByteArray::共享的_null“ (?共享_null@QByteArray@@0UData@1@(A)

错误LNK2001: 未解析的外部符号“公共: 静态结构QMetaObject const QDialog::staticMetaObject“ (?staticMetaObject@QDialog@@2UQMetaObject@@B)

错误LNK2001: 未解析的外部符号“公共: 静态结构QMetaObject const QDialog::staticMetaObject“ (?staticMetaObject@QDialog@@2UQMetaObject@@B)

错误LNK2001: 未解析的外部符号“公共: 静态结构QMetaObject const QDialog::staticMetaObject“ (?staticMetaObject@QDialog@@2UQMetaObject@@B)

错误LNK2019:未解析的外部符号“public:static enum QSysInfo::WinVersion const QSysInfo::WindowsVersion”(?WindowsVersion@QSysInfo@@2W4WinVersion@1@B) 在函数中引用_WinMain@16


我做错了什么?请帮助修复此问题。

请确保在重新编译Qt后,在自己的Qt项目上重新运行qmake。构建标志也需要在项目中更新。

请确保在重新编译Qt后在自己的Qt项目上重新运行qmake。构建标志也需要在项目中更新。

这些说明适用于VS2005。您得到的警告是针对lib多线程静态C运行库的。就我个人而言,我不会在qmake.conf中将这些值从-MD更改为-MT,并将-MDd更改为MTd。我会让他们保持原样。无论如何,如果您使用VisualStudio解决方案,则必须转到C++编译器选项,并将那些LIB设置更改为MT和MTD。 这些说明适用于VS2005。您得到的警告是针对lib多线程静态C运行库的。就我个人而言,我不会在qmake.conf中将这些值从-MD更改为-MT,并将-MDd更改为MTd。我会让他们保持原样。无论如何,如果您使用VisualStudio解决方案,则必须转到C++编译器选项,并将那些LIB设置更改为MT和MTD。 您可以发布用于配置和构建Qt的命令行吗?在构建Qt时,您是否收到任何错误或主要警告?我建议不要更改.conf文件中的任何内容,除非您确定自己在做什么。你所做的事情真的不需要它。我还建议您下载Windows源代码发行版的新副本,或者如果您还有存档文件,则重新解包,以确保您没有以前版本中可能未正确删除的任何遗留文件。然后,进行configure和nmake。

可以发布用于配置和构建Qt的命令行吗?在构建Qt时,您是否收到任何错误或主要警告?我建议不要更改.conf文件中的任何内容,除非您确定自己在做什么。你所做的事情真的不需要它。我还建议您下载Windows源代码发行版的新副本,或者如果您还有存档文件,则重新解包,以确保您没有以前版本中可能未正确删除的任何遗留文件。然后,进行配置和nmake。

尝试在项目设置和重建中设置-MtD。错误依然存在。还尝试生成*.pro文件并生成。出现270+个链接错误。尝试在项目设置中设置-MtD并重新生成。错误依然存在。还尝试生成*.pro文件并生成。得到270+链接错误。