Details
-
Bug
-
Resolution: Cannot Reproduce
-
Not Evaluated
-
None
-
Qt Creator 9.0.1
-
None
Description
I'm trying to build Qt Creator 9.0.1 from source against our build of Qt 6.4.1 from source. On Linux everything works, but on Windows I get undefined symbols. Note that we use ClangCl 15.0.5 as a frontend to MSVC 17.4.0, maybe the problem is ClangCl specific?
Here is the error:
[1833/3711] cmd.exe /C "cd . && C:\data\Tools\bin\cmake.exe -E vs_link_dll --intdir=src\plugins\cppeditor\CMakeFiles\CppEditor.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100226~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI 3CF2~1\10\bin\100226~1.0\x64\mt.exe --manifests -- C:\BDA\ci\LLVM-15.0.5\bin\lld-link.exe @CMakeFiles\CppEditor.rsp /out:lib\qtcreator\plugins\CppEditor.dll /implib:lib\qtcreator\plugins\CppEditor.lib / pdb:lib\qtcreator\plugins\CppEditor.pdb /dll /version:0.0 /machine:x64 /DEBUG:FULL /debug /INCREMENTAL C:\data\usr-tmp-C10Sk32c193431933c1505\Debug\qt-creator\src\libs\3rdparty\syntax-highlighting\CMak eFiles\QtCreatorPchGui.dir\.\cmake_pch.cxx.obj && cd ." FAILED: lib/qtcreator/plugins/CppEditor.dll lib/qtcreator/plugins/CppEditor.lib cmd.exe /C "cd . && C:\data\Tools\bin\cmake.exe -E vs_link_dll --intdir=src\plugins\cppeditor\CMakeFiles\CppEditor.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100226~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bi n\100226~1.0\x64\mt.exe --manifests -- C:\BDA\ci\LLVM-15.0.5\bin\lld-link.exe @CMakeFiles\CppEditor.rsp /out:lib\qtcreator\plugins\CppEditor.dll /implib:lib\qtcreator\plugins\CppEditor.lib /pdb:lib\qtcr eator\plugins\CppEditor.pdb /dll /version:0.0 /machine:x64 /DEBUG:FULL /debug /INCREMENTAL C:\data\usr-tmp-C10Sk32c193431933c1505\Debug\qt-creator\src\libs\3rdparty\syntax-highlighting\CMakeFiles\QtCre atorPchGui.dir\.\cmake_pch.cxx.obj && cd ." LINK Pass 1: command "C:\BDA\ci\LLVM-15.0.5\bin\lld-link.exe @CMakeFiles\CppEditor.rsp /out:lib\qtcreator\plugins\CppEditor.dll /implib:lib\qtcreator\plugins\CppEditor.lib /pdb:lib\qtcreator\plugins\CppEdi tor.pdb /dll /version:0.0 /machine:x64 /DEBUG:FULL /debug /INCREMENTAL C:\data\usr-tmp-C10Sk32c193431933c1505\Debug\qt-creator\src\libs\3rdparty\syntax-highlighting\CMakeFiles\QtCreatorPchGui.dir\.\cmake_p ch.cxx.obj /MANIFEST /MANIFESTFILE:src\plugins\cppeditor\CMakeFiles\CppEditor.dir/intermediate.manifest src\plugins\cppeditor\CMakeFiles\CppEditor.dir/manifest.res" failed (exit code 1) with the following output: lld-link: error: undefined symbol: __declspec(dllimport) public: bool __cdecl CPlusPlus::List<class CPlusPlus::DeclarationAST *>::ListIterator::operator!=(class CPlusPlus::List<class CPlusPlus::Declaration AST *>::ListIterator const &) >>> referenced by C:\cygwin64\home\memmenlauer\BDA\Src\qt-creator\src\plugins\cppeditor\insertionpointlocator.cpp:331 >>> src\plugins\cppeditor\CMakeFiles\CppEditor.dir\insertionpointlocator.cpp.obj:(public: class CppEditor::InsertionLocation __cdecl CppEditor::InsertionPointLocator::constructorDeclarationIn Class(class CPlusPlus::TranslationUnit const *, class CPlusPlus::ClassSpecifierAST const *, enum CppEditor::InsertionPointLocator::AccessSpec, int) const) lld-link: error: undefined symbol: __declspec(dllimport) public: class CPlusPlus::DeclarationAST * __cdecl CPlusPlus::List<class CPlusPlus::DeclarationAST *>::ListIterator::operator*(void) >>> referenced by C:\cygwin64\home\memmenlauer\BDA\Src\qt-creator\src\plugins\cppeditor\insertionpointlocator.cpp:331 >>> src\plugins\cppeditor\CMakeFiles\CppEditor.dir\insertionpointlocator.cpp.obj:(public: class CppEditor::InsertionLocation __cdecl CppEditor::InsertionPointLocator::constructorDeclarationIn Class(class CPlusPlus::TranslationUnit const *, class CPlusPlus::ClassSpecifierAST const *, enum CppEditor::InsertionPointLocator::AccessSpec, int) const) lld-link: error: undefined symbol: __declspec(dllimport) public: bool __cdecl CPlusPlus::List<class CPlusPlus::DeclaratorAST *>::ListIterator::operator!=(class CPlusPlus::List<class CPlusPlus::DeclaratorAS T *>::ListIterator const &) >>> referenced by C:\cygwin64\home\memmenlauer\BDA\Src\qt-creator\src\plugins\cppeditor\insertionpointlocator.cpp:339 >>> src\plugins\cppeditor\CMakeFiles\CppEditor.dir\insertionpointlocator.cpp.obj:(public: class CppEditor::InsertionLocation __cdecl CppEditor::InsertionPointLocator::constructorDeclarationIn Class(class CPlusPlus::TranslationUnit const *, class CPlusPlus::ClassSpecifierAST const *, enum CppEditor::InsertionPointLocator::AccessSpec, int) const) lld-link: error: undefined symbol: __declspec(dllimport) public: class CPlusPlus::DeclaratorAST * __cdecl CPlusPlus::List<class CPlusPlus::DeclaratorAST *>::ListIterator::operator*(void) >>> referenced by C:\cygwin64\home\memmenlauer\BDA\Src\qt-creator\src\plugins\cppeditor\insertionpointlocator.cpp:339 >>> src\plugins\cppeditor\CMakeFiles\CppEditor.dir\insertionpointlocator.cpp.obj:(public: class CppEditor::InsertionLocation __cdecl CppEditor::InsertionPointLocator::constructorDeclarationIn Class(class CPlusPlus::TranslationUnit const *, class CPlusPlus::ClassSpecifierAST const *, enum CppEditor::InsertionPointLocator::AccessSpec, int) const) lld-link: error: undefined symbol: __declspec(dllimport) public: bool __cdecl CPlusPlus::List<class CPlusPlus::PostfixDeclaratorAST *>::ListIterator::operator!=(class CPlusPlus::List<class CPlusPlus::Postf ixDeclaratorAST *>::ListIterator const &) >>> referenced by C:\cygwin64\home\memmenlauer\BDA\Src\qt-creator\src\plugins\cppeditor\insertionpointlocator.cpp:340 >>> src\plugins\cppeditor\CMakeFiles\CppEditor.dir\insertionpointlocator.cpp.obj:(public: class CppEditor::InsertionLocation __cdecl CppEditor::InsertionPointLocator::constructorDeclarationIn Class(class CPlusPlus::TranslationUnit const *, class CPlusPlus::ClassSpecifierAST const *, enum CppEditor::InsertionPointLocator::AccessSpec, int) const) lld-link: error: undefined symbol: __declspec(dllimport) public: class CPlusPlus::PostfixDeclaratorAST * __cdecl CPlusPlus::List<class CPlusPlus::PostfixDeclaratorAST *>::ListIterator::operator*(void) >>> referenced by C:\cygwin64\home\memmenlauer\BDA\Src\qt-creator\src\plugins\cppeditor\insertionpointlocator.cpp:340 >>> src\plugins\cppeditor\CMakeFiles\CppEditor.dir\insertionpointlocator.cpp.obj:(public: class CppEditor::InsertionLocation __cdecl CppEditor::InsertionPointLocator::constructorDeclarationIn Class(class CPlusPlus::TranslationUnit const *, class CPlusPlus::ClassSpecifierAST const *, enum CppEditor::InsertionPointLocator::AccessSpec, int) const)