Qt 5.4.1 fails to link when linking QtWebEngine under VS 2013



  • I am compiling Qt 5.4.1 from source, under VS 2013, using the -Zc:wchar_t- flag.

    Using the following configuration...

    configure -mp -no-native-gestures -prefix C:\Qt\5.4.1-VC12-x64 -debug-and-release -opensource -shared -platform win32-msvc2013 -sse2 -opengl desktop -openssl -I C:\OpenSSL\include -L C:\OpenSSL\bin\VC12\x64 -icu -I c:\icu\dist\include -L c:\icu\dist\lib64

    and edited the mkspecs here: C:\Qt\5.4.1\qtbase\mkspecs\win32-msvc2013 to include the following line.

    QMAKE_CFLAGS = -nologo -Zm200 -Zc:wchar_t- -FS

    However, I receive the following link errors, as if the -Zc:wchar_t- flag hasn't propagated through to QtWebEngine.

    link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /MACHINE:X64 /LIBPATH:"C:\Pro
    gram Files (x86)\Windows Kits\8.0\Lib\win8\um\x64" /DELAYLOAD:dbghelp.dll /DELAY
    LOAD:dwmapi.dll /DELAYLOAD:shell32.dll /DELAYLOAD:uxtheme.dll /DELAYLOAD:powrpro
    f.dll /DELAYLOAD:mf.dll /DELAYLOAD:mfplat.dll /DELAYLOAD:mfreadwrite.dll /DELAYL
    OAD:d3d9.dll /DELAYLOAD:dxva2.dll /DELAYLOAD:ffmpegsumo.dll /DELAYLOAD:dinput8.d
    ll /DELAYLOAD:user32.dll /PDB:QtWebEngineCore.dll.pdb /dynamicbase /ignore:4199
    /ignore:4221 /nxcompat /SUBSYSTEM:WINDOWS,5.02 /INCREMENTAL:NO /FIXED:NO /DYNAMI
    CBASE:NO /NODEFAULTLIB:olepro32.lib wininet.lib dnsapi.lib version.lib msimg32.l
    ib ws2_32.lib usp10.lib psapi.lib dbghelp.lib winmm.lib shlwapi.lib powrprof.lib
    advapi32.lib kernel32.lib gdi32.lib winspool.lib comdlg32.lib shell32.lib ole32
    .lib oleaut32.lib user32.lib uuid.lib odbc32.lib odbccp32.lib delayimp.lib credu
    i.lib netapi32.lib /NXCOMPAT /DEBUG /DLL /SUBSYSTEM:WINDOWS /VERSION:5.41 /MANIF
    EST:embed /OUT:....\lib\Qt5WebEngineCored.dll @C:\Users\ROBERT~1.LAY\AppData\Lo
    cal\Temp\nm2AA8.tmp
    Creating library ....\lib\Qt5WebEngineCored.lib and object ....\lib\Qt5WebE
    ngineCored.exp
    QtWebEngineCore.web_engine_settings.obj : error LNK2001: unresolved external sym
    bol "__declspec(dllimport) public: class std::basic_string<wchar_t,struct std::c
    har_traits<wchar_t>,class std::allocator<wchar_t> > __cdecl QString::toStdWStrin
    g(void)const " (_imp?toStdWString@QString@@QEBA?AV?$basic_string@_WU?$char_tra
    its@_W@std@@V?$allocator@_W@2@@std@@XZ)
    QtWebEngineCore.render_widget_host_view_qt.obj : error LNK2001: unresolved exter
    nal symbol "__declspec(dllimport) public: class std::basic_string<wchar_t,struct
    std::char_traits<wchar_t>,class std::allocator<wchar_t> > __cdecl QString::toSt
    dWString(void)const " (_imp?toStdWString@QString@@QEBA?AV?$basic_string@_WU?$c
    har_traits@_W@std@@V?$allocator@_W@2@@std@@XZ)
    QtWebEngineCore.resource_dispatcher_host_delegate_qt.obj : error LNK2001: unreso
    lved external symbol "__declspec(dllimport) public: class std::basic_string<wcha
    r_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > __cdecl QSt
    ring::toStdWString(void)const " (_imp?toStdWString@QString@@QEBA?AV?$basic_str
    ing@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ)
    QtWebEngineCore.web_contents_adapter.obj : error LNK2001: unresolved external sy
    mbol "__declspec(dllimport) public: class std::basic_string<wchar_t,struct std::
    char_traits<wchar_t>,class std::allocator<wchar_t> > __cdecl QString::toStdWStri
    ng(void)const " (_imp?toStdWString@QString@@QEBA?AV?$basic_string@_WU?$char_tr
    aits@_W@std@@V?$allocator@_W@2@@std@@XZ)
    QtWebEngineCore.web_engine_library_info.obj : error LNK2001: unresolved external
    symbol "__declspec(dllimport) public: class std::basic_string<wchar_t,struct st
    d::char_traits<wchar_t>,class std::allocator<wchar_t> > __cdecl QString::toStdWS
    tring(void)const " (_imp?toStdWString@QString@@QEBA?AV?$basic_string@_WU?$char
    _traits@_W@std@@V?$allocator@_W@2@@std@@XZ)
    QtWebEngineCore.browser_context_qt.obj : error LNK2001: unresolved external symb
    ol "__declspec(dllimport) public: class std::basic_string<wchar_t,struct std::ch
    ar_traits<wchar_t>,class std::allocator<wchar_t> > __cdecl QString::toStdWString
    (void)const " (_imp?toStdWString@QString@@QEBA?AV?$basic_string@_WU?$char_trai
    ts@W@std@@V?$allocator@W@2@@std@@XZ)
    QtWebEngineCore.clipboard_qt.obj : error LNK2001: unresolved external symbol "

    declspec(dllimport) public: class std::basic_string<wchar_t,struct std::char_tra
    its<wchar_t>,class std::allocator<wchar_t> > __cdecl QString::toStdWString(void)
    const " (_imp?toStdWString@QString@@QEBA?AV?$basic_string@_WU?$char_traits@_W@
    std@@V?$allocator@_W@2@@std@@XZ)
    QtWebEngineCore.download_manager_delegate_qt.obj : error LNK2001: unresolved ext
    ernal symbol "__declspec(dllimport) public: class std::basic_string<wchar_t,stru
    ct std::char_traits<wchar_t>,class std::allocator<wchar_t> > __cdecl QString::to
    StdWString(void)const " (_imp?toStdWString@QString@@QEBA?AV?$basic_string@_WU?
    $char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ)
    QtWebEngineCore.javascript_dialog_controller.obj : error LNK2001: unresolved ext
    ernal symbol "__declspec(dllimport) public: class std::basic_string<wchar_t,stru
    ct std::char_traits<wchar_t>,class std::allocator<wchar_t> > __cdecl QString::to
    StdWString(void)const " (_imp?toStdWString@QString@@QEBA?AV?$basic_string@_WU?
    $char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ)
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 12.0
    \VC\BIN\x86_amd64\link.EXE"' : return code '0x460'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 12.0
    \VC\BIN\nmake.exe"' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: '(' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : return code '0x2'
    Stop.

    double checking QtWebEngine makefiles it appears that the flag has propagated through.

    Anyone else tried to build Qt 5.4.1 with the -Zc:wchar_t- flag?


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.