Details
Description
When I configure QtWebEngine without spellchecker then I get undefined symbols during linking of the dll. The error message is:
jom: parallel job execution disabled for Makefile.core_module D:\artifacts-MSVC-Generic-7-x64-cl19.16.27031.1\Tools\bin\jom.exe -f Makefile.core_module.Debug rc /NOLOGO -D_DEBUG -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DWIN64 -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_WEBENGINECORE_LIB -DQT_BUILDING_QT -D_CRT_SECURE_NO_WARNINGS -D_USE_MATH_DEFINES -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x040800 -DQT_NO_EXCEPTIONS -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_WEBCHANNEL_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_WEBENGINECOREHEADERS_LIB -D_WINDLL -fo .obj\debug\Qt5WebEngineCored_resource.res Qt5WebEngineCored_resource.rc link /NOLOGO /DYNAMICBASE /NXCOMPAT /MACHINE:X64 /DEBUG @D:/tmp/qt5-x64/qtwebengine/src/core/debug/QtWebEngineCore_o.rsp /WX /DEBUG /pdbaltpath:%_PDB% /MACHINE:X64 /fastfail /FIXED:NO /ignore:4199 /ignore:4221 /NXCOMPAT /DYNAMICBASE /time /verbose:incr /INCREMENTAL:NO /SUBSYSTEM:CONSOLE,5.02 /NOLOGO /DYNAMICBASE /NXCOMPAT /MACHINE:X64 /DEBUG /DEBUG /DLL /SUBSYSTEM:WINDOWS /DELAYLOAD:cfgmgr32.dll /DELAYLOAD:powrprof.dll /DELAYLOAD:setupapi.dll /NATVIS:D:/tmp/qt5/qtwebengine/src/3rdparty/chromium/tools/win/DebugVisualizers/chrome.natvis /DELAYLOAD:BluetoothApis.dll /DELAYLOAD:Bthprops.cpl /DELAYLOAD:setupapi.dll /DELAYLOAD:mf.dll /DELAYLOAD:mfplat.dll /DELAYLOAD:mfreadwrite.dll /NATVIS:D:/tmp/qt5/qtwebengine/src/3rdparty/chromium/tools/win/DebugVisualizers/webkit.natvis /OPT:REF @D:/tmp/qt5-x64/qtwebengine/src/core/api/debug\qtwebenginecoreapid.lib.objects /DEBUG /DLL /SUBSYSTEM:WINDOWS /VERSION:5.13 /MANIFEST:embed /OUT:..\..\lib\Qt5WebEngineCored.dll @C:\Users\bdaci01\AppData\Local\Temp\Qt5WebEngineCored.dll.244.47.jom Creating library ..\..\lib\Qt5WebEngineCored.lib and object ..\..\lib\Qt5WebEngineCored.exp LibDef: Total time = 0.313s spellcheck.mojom.obj : error LNK2019: unresolved external symbol "public: __cdecl SpellCheckResult::SpellCheckResult(enum SpellCheckResult::Decoration,int,int,class std::vector<class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> >,class std::allocator<class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > > > const &)" (??0SpellCheckResult@@QEAA@W4Decoration@0@HHAEBV?$vector@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@V?$allocator@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@2@@std@@@Z) referenced in function "public: static void __cdecl std::_Default_allocator_traits<class std::allocator<struct SpellCheckResult> >::construct<struct SpellCheckResult>(class std::allocator<struct SpellCheckResult> &,struct SpellCheckResult * const)" (??$construct@USpellCheckResult@@$$V@?$_Default_allocator_traits@V?$allocator@USpellCheckResult@@@std@@@std@@SAXAEAV?$allocator@USpellCheckResult@@@1@QEAUSpellCheckResult@@@Z) spellcheck.mojom.obj : error LNK2019: unresolved external symbol "public: __cdecl SpellCheckResult::~SpellCheckResult(void)" (??1SpellCheckResult@@QEAA@XZ) referenced in function "public: void * __cdecl SpellCheckResult::`scalar deleting destructor'(unsigned int)" (??_GSpellCheckResult@@QEAAPEAXI@Z) spellcheck.mojom-test-utils.obj : error LNK2001: unresolved external symbol "public: __cdecl SpellCheckResult::~SpellCheckResult(void)" (??1SpellCheckResult@@QEAA@XZ) spellcheck.mojom.obj : error LNK2019: unresolved external symbol "public: static enum spellcheck::mojom::Decoration __cdecl mojo::EnumTraits<enum spellcheck::mojom::Decoration,enum SpellCheckResult::Decoration>::ToMojom(enum SpellCheckResult::Decoration)" (?ToMojom@?$EnumTraits@W4Decoration@mojom@spellcheck@@W41SpellCheckResult@@@mojo@@SA?AW4Decoration@mojom@spellcheck@@W43SpellCheckResult@@@Z) referenced in function "public: static void __cdecl mojo::internal::Serializer<enum spellcheck::mojom::Decoration,enum SpellCheckResult::Decoration>::Serialize(enum SpellCheckResult::Decoration,int *)" (?Serialize@?$Serializer@W4Decoration@mojom@spellcheck@@W41SpellCheckResult@@@internal@mojo@@SAXW4Decoration@SpellCheckResult@@PEAH@Z) spellcheck.mojom.obj : error LNK2019: unresolved external symbol "public: static bool __cdecl mojo::EnumTraits<enum spellcheck::mojom::Decoration,enum SpellCheckResult::Decoration>::FromMojom(enum spellcheck::mojom::Decoration,enum SpellCheckResult::Decoration *)" (?FromMojom@?$EnumTraits@W4Decoration@mojom@spellcheck@@W41SpellCheckResult@@@mojo@@SA_NW4Decoration@mojom@spellcheck@@PEAW43SpellCheckResult@@@Z) referenced in function "public: static bool __cdecl mojo::internal::Serializer<enum spellcheck::mojom::Decoration,enum SpellCheckResult::Decoration>::Deserialize(int,enum SpellCheckResult::Decoration *)" (?Deserialize@?$Serializer@W4Decoration@mojom@spellcheck@@W41SpellCheckResult@@@internal@mojo@@SA_NHPEAW4Decoration@SpellCheckResult@@@Z) spellcheck.mojom.obj : error LNK2019: unresolved external symbol "public: static bool __cdecl mojo::StructTraits<class spellcheck::mojom::SpellCheckResultDataView,struct SpellCheckResult>::Read(class spellcheck::mojom::SpellCheckResultDataView,struct SpellCheckResult *)" (?Read@?$StructTraits@VSpellCheckResultDataView@mojom@spellcheck@@USpellCheckResult@@@mojo@@SA_NVSpellCheckResultDataView@mojom@spellcheck@@PEAUSpellCheckResult@@@Z) referenced in function "public: static bool __cdecl mojo::internal::Serializer<class spellcheck::mojom::SpellCheckResultDataView,struct SpellCheckResult>::Deserialize(class spellcheck::mojom::internal::SpellCheckResult_Data *,struct SpellCheckResult *,class mojo::internal::SerializationContext *)" (?Deserialize@?$Serializer@VSpellCheckResultDataView@mojom@spellcheck@@USpellCheckResult@@@internal@mojo@@SA_NPEAVSpellCheckResult_Data@2mojom@spellcheck@@PEAUSpellCheckResult@@PEAVSerializationContext@23@@Z) spellcheck.mojom-test-utils.obj : error LNK2019: unresolved external symbol "public: __cdecl SpellCheckResult::SpellCheckResult(struct SpellCheckResult const &)" (??0SpellCheckResult@@QEAA@AEBU0@@Z) referenced in function "public: static void __cdecl std::_Default_allocator_traits<class std::allocator<struct SpellCheckResult> >::construct<struct SpellCheckResult,struct SpellCheckResult &>(class std::allocator<struct SpellCheckResult> &,struct SpellCheckResult * const,struct SpellCheckResult &)" (??$construct@USpellCheckResult@@AEAU1@@?$_Default_allocator_traits@V?$allocator@USpellCheckResult@@@std@@@std@@SAXAEAV?$allocator@USpellCheckResult@@@1@QEAUSpellCheckResult@@AEAU3@@Z) ..\..\lib\Qt5WebEngineCored.dll : fatal error LNK1120: 6 unresolved externals
I disable iterator debugging in QFLAGS (see below) and in qtwebengine/src/core/config/common.pri:
gn_args += enable_iterator_debugging=false
My configure flags for Qt are:
configure.bat" -v \ -prefix "D:/artifacts-MSVC-Generic-7-x64-cl19.16.27031.1/Debug" \ QMAKE_CFLAGS+="${CFLAGS} /MDd /Zi /D_ITERATOR_DEBUG_LEVEL=0 \ /D_ENABLE_EXTENDED_ALIGNED_STORAGE" \ QMAKE_CXXFLAGS+="${CXXFLAGS} /MDd /Zi /D_ITERATOR_DEBUG_LEVEL=0 \ /D_ENABLE_EXTENDED_ALIGNED_STORAGE" \ QMAKE_LFLAGS+="${LDFLAGS} /MACHINE:X64 /DEBUG" \ -sse2 -sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 -no-avx -no-avx2 -no-avx512 -debug \ ZLIB_LIBS="-lzlibd" LIBPNG_LIBS="-llibpng16d" LIBJPEG_LIBS="-ljpeg" \ OPENSSL_LIBS="-llibeay32 -lssleay32" FREETYPE_LIBS="-lfreetype" \ -platform win32-msvc2017 -opensource -confirm-license -shared -no-pch -no-dbus \ -no-iconv -no-pkg-config -icu -nomake examples -nomake tests -no-compile-examples \ -no-gif -no-pulseaudio -no-alsa -no-cups -no-gstreamer -skip qtactiveqt -skip qtcharts \ -skip qtconnectivity -skip qtspeech -skip qtdoc -skip qtgamepad -skip qtlocation \ -skip qtpurchasing -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus \ -skip qtserialport -skip qtvirtualkeyboard -skip qtwayland -no-webengine-alsa \ -no-webengine-icu -no-webengine-ffmpeg -no-webengine-opus -no-webengine-webp \ -no-webengine-pepper-plugins -no-webengine-printing-and-pdf \ -no-webengine-proprietary-codecs -no-webengine-pulseaudio \ -no-webengine-spellchecker -no-webengine-native-spellchecker \ -no-webengine-webrtc -no-webengine-geolocation -no-webengine-kerberos \ -webengine-webchannel -webengine-v8-snapshot -skip qtxmlpatterns \ -no-feature-movie -no-feature-big_codecs -feature-highdpiscaling -no-directfb \ -no-use-gold-linker -system-zlib -system-libpng -system-libjpeg -system-freetype \ -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql \ -no-sql-sqlite2 -no-sql-sqlite -no-sql-tds -no-journald -no-syslog -no-slog2 \ -opengl desktop -no-ssl -no-openssl -no-securetransport -no-libproxy -no-sctp \ -c++std c++14
Attachments
Issue Links
- is duplicated by
-
QTBUG-77669 QtWebEngine fails on macOS 10.14 if spellchecker disabled
- Closed