2

我正在尝试使用来自 Qt Creator 中的应用程序的 3rd 方驱动程序。此应用程序必须作为静态库包含在内。/MT没有标志它不会编译。在心痛之后,我把它归结为两个链接器错误:

msvcrtd.lib(ti_inst.obj):-1: error: LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)
msvcrtd.lib(ti_inst.obj):-1: error: LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)

我认为这里描述了这个问题。如果是这种情况,那么我想我需要知道如何强制 Qt Creator 以特定顺序链接这些系统库,而我什至一开始都没有将它们明确包含在 .pro 文件中。如果有人能告诉我该怎么做,那就太好了。但是,如果这与 MS 页面上描述的问题不同,那么对我真正做错了什么的解释会更好。

4

1 回答 1

0

只是为了将此标记为已回答,我将引用 kanders84152:“没关系。我链接到错误的 msvc 库。应该使用msvcmrt.lib而不是msvcurt.libnor msvcprt.lib。现在似乎可以工作了。谢谢大家。”

于 2013-10-01T01:32:42.367 回答