0

我是 Qt 新手,在链接我的项目时收到以下错误:

    qtmain.lib(qtmain_win.obj):错误 LNK2038:检测到“_MSC_VER”不匹配:va
    lue '1600' 与 main.obj 中的值 '1700' 不匹配
    main.obj:错误 LNK2001:无法解析的外部符号“char const * __cdecl std::
    _Winerror_map(int)" (?_Winerror_map@std@@YAPBDH@Z)
    main.obj:错误 LNK2001:无法解析的外部符号“char const * __cdecl std::
    _Syserror_map(int)" (?_Syserror_map@std@@YAPBDH@Z)
    main.obj:错误 LNK2001:未解析的外部符号“void __cdecl std::_Xbad_al
    loc(void)" (?_Xbad_alloc@std@@YAXXZ)
    main.obj:错误 LNK2001:未解析的外部符号“void __cdecl std::_Xout_of
    _range(char const *)" (?_Xout_of_range@std@@YAXPBD@Z)
    main.obj:错误 LNK2001:未解析的外部符号“void __cdecl std::_Xlength
    _error(char const *)" (?_Xlength_error@std@@YAXPBD@Z)
    main.obj:错误 LNK2001:无法解析的外部符号“__declspec(dllimport) publ
    ic: 静态 void __fastcall QListData::dispose(struct QListData::Data *)" (__imp_
    ?dispose@QListData@@SIXPAUData@1@@Z)
    main.obj:错误 LNK2001:无法解析的外部符号“__declspec(dllimport) publ
    ic: static int __fastcall QApplication::exec(void)" (__imp_?exec@QApplication@@S
    IHXZ)
    moc_mainwindow.obj:错误 LNK2001:未解析的外部符号“__declspec(dllim
    端口) void __fastcall qt_assert(char const *,char const *,int)" (__imp_?qt_asser
    t@@YIXPBD0H@Z)
    mainwindow.obj:错误 LNK2001:无法解析的外部符号“__declspec(dllimport
    ) public: 静态类 QString __fastcall QCoreApplication::translate(char const
     *,char const *,char const *,int)" (__imp_?translate@QCoreApplication@@SI?AVQStr
    ing@@PBD00H@Z)
    mainwindow.obj:错误 LNK2001:无法解析的外部符号“__declspec(dllimport
    ) public: static void __fastcall QMetaObject::connectSlotsByName(class QObject *
    )" (__imp_?connectSlotsByName@QMetaObject@@SIXPAVQObject@@@Z)
    d:\c\output\main\main32.exe : 致命错误 LNK1120: 10 unresolved externals

这是我的链接命令:

    "%VCInstallDir%\bin\link.exe" /MACHINE:X86 /LIBPATH:"%VCInstallDir%\lib" /LIBPATH:"%VCInstallDir%\atlmfc\lib" /LIBPATH:"%WindowsSdkDir%\Lib\win8\um \%_pf%" LIBPATH:"e:\Qt\Qt5.0.2\5.0.2\msvc2010\lib" /MERGE:code=.text /errorReport:none /DEBUG /FIXED /INCREMENTAL:NO /NXCOMPAT /LTCG /MAP :"d:\c\temp\main\win32\main.map" MAPINFO:EXPORTS /NODEFAULTLIB /NOLOGO /OPT:REF /OPT:ICF /LARGEADDRESSAWARE:NO /DYNAMICBASE:NO /OUT:"d:\c\output \main\main32.exe" /MANIFESTUAC:NO /SAFESEH:NO /SUBSYSTEM:WINDOWS /VERSION:1.0 /WX /MERGE:.rdata=.text /FIXED:NO libcmt.lib kernel32.lib user32.lib advapi32.lib shlwapi .lib shell32.lib secur32.lib psapi.lib ole32.lib gdi32.lib comctl32.lib ws2_32.lib crypt32.lib wininet.lib msxml2.liboleaut32.lib netapi32.lib userenv.lib comdlg32.lib mpr.lib uuid。lib Qt5Core.libQt5Gui.lib Qt5Widgets.lib qtmain.lib libEGL.lib libGLESv2.lib "d:\c\temp\main\win32\main.obj" "d:\c\temp\main\win32\moc_mainwindow.obj" "d:\c\temp\main\win32\ui_mainwindow.obj" "d:\c\temp\main\win32\mainwindow.obj"

是否缺少一些库或其他依赖项?谢谢你。

4

1 回答 1

1

您不能使用用另一个版本的 VS 构建的 Qt 库。使用您的编译器编译 Qt。

于 2013-06-07T14:23:40.810 回答