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?