-1

我需要在我的 Qt5 项目中使用静态库。我使用 VC++ 2010 作为编译器,使用 QtCreator 作为 IDE。

如果我使用动态版本 (.DLL) 一切正常。如果我尝试使用静态版本 (.LIB),似乎该库正在寻找其他无法满足的依赖项。遗憾的是,我的项目不能选择使用 DLL。

关键是,如果我尝试使用 VC++ IDE 中的静态库,一切正常。请注意,我可以在我的 Qt 项目中使用其他 VC++ 头文件而不会出现任何问题。

似乎编译器可以找到它需要的一切(基本上,我的源代码和所有必需的标头),而链接器缺少一些东西。

错误:LNK2019:函数“bool __cdecl SystemTimeToMinute(struct _SYSTEMTIME *,unsigned long *)”(?SystemTimeToMinute@@YA_NPAU_SYSTEMTIME@@PAK@Z)中引用的未解析的外部符号_imp_SystemTimeToVariantTime @8

SystemTimeToVariantTime 在 OleAut32.lib 中定义。

期望链接器根据全局变量 INCLUDE 和 LIB 的内容自动查找所需的库和头文件,我错了吗?

4

1 回答 1

0

解决了。问题是我试图使用包含外部(SDK)库

LIBS += -l OleAut32.lib

虽然我不得不简单地使用

LIBS += OleAut32.lib

嗯,问题解决了。我希望这可以帮助将来的人!

于 2013-09-12T09:31:06.393 回答