Details
-
Bug
-
Resolution: Invalid
-
P2: Important
-
None
-
6.0.0, 6.1.0
-
None
Description
I'm compiling Qt 6.0.0 with cmake on Ubuntu 18.04 using the official LLVM clang 11.0.1 compiler (from https://releases.llvm.org/download.html#11.0.1).
When Linguist is enabled, the build fails with missing symbols (see below). Without Linguist enabled, the build works fine.
Here an excerpt from the buildlog, attached the full log and the output from cmake.trace:
: && /data/bdaci01/BioDataAnalysis/stable-artifacts-Ubuntu-Skylake-18.04-x86_64-clang11.1.0/Tools/lib/ccache/clang++ -stdlib=libc++ -g -Wl,--disable-new-dtags -stdlib=libc++ qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/lupdate_autogen/mocs_compilation.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/numerus.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/po.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/projectdescriptionreader.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/qm.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/qph.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/qrcreader.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/runqttool.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/simtexth.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/translator.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/translatormessage.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/ts.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/xliff.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/__/shared/xmlparser.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/cpp.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/java.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/main.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/merge.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/ui.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/qdeclarative.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/clangtoolastreader.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/cpp_clang.cpp.o qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/lupdatepreprocessoraction.cpp.o -o qtbase/bin/lupdate -Wl,-rpath,"/data/bdaci01/BioDataAnalysis/stable-artifacts-Ubuntu-Skylake-18.04-x86_64-clang11.1.0/Debug/lib:/data/bdaci01/BioDataAnalysis/stable-artifacts-Ubuntu-Skylake-18.04-x86_64-clang11.1.0/Tools/lib:\$ORIGIN/../lib" qtbase/lib/libQt6QmlDevTools.a qtbase/lib/libQt6Core.so.6.0.0 /usr/lib/llvm-11/lib/libclang-11.so.1 /usr/lib/llvm-11/lib/libclang-cpp.so.11 /usr/lib/llvm-11/lib/libLLVM-11.so.1 -pthread && : qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/clangtoolastreader.cpp.o: In function `LupdatePrivate::isQObjectOrQDeclareTrFunctionMacroDeclared(clang::CXXRecordDecl*, QString&, clang::SourceManager const&)': /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:90: undefined reference to `clang::SourceLocation::printToString(clang::SourceManager const&) const' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/clangtoolastreader.cpp.o: In function `LupdatePrivate::lookForContext(clang::CXXRecordDecl*, clang::SourceManager const&)': /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:115: undefined reference to `clang::NamedDecl::getQualifiedNameAsString() const' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/clangtoolastreader.cpp.o: In function `LupdateVisitor::VisitCallExpr(clang::CallExpr*)': /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:325: undefined reference to `clang::DeclarationNameInfo::getAsString() const' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/clangtoolastreader.cpp.o: In function `LupdateVisitor::VisitNamedDecl(clang::NamedDecl*)': /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:756: undefined reference to `clang::NamedDecl::getQualifiedNameAsString() const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:757: undefined reference to `clang::SourceRange::printToString(clang::SourceManager const&) const' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/clangtoolastreader.cpp.o: In function `LupdateVisitor::findContextForTranslationStoresFromPP(clang::NamedDecl*)': /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:786: undefined reference to `clang::SourceRange::printToString(clang::SourceManager const&) const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:787: undefined reference to `clang::SourceLocation::printToString(clang::SourceManager const&) const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:790: undefined reference to `clang::SourceRange::printToString(clang::SourceManager const&) const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:792: undefined reference to `clang::SourceLocation::printToString(clang::SourceManager const&) const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:794: undefined reference to `clang::NamedDecl::getQualifiedNameAsString() const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:809: undefined reference to `clang::NamedDecl::getQualifiedNameAsString() const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:811: undefined reference to `clang::SourceRange::printToString(clang::SourceManager const&) const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:812: undefined reference to `clang::SourceLocation::printToString(clang::SourceManager const&) const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:815: undefined reference to `clang::SourceRange::printToString(clang::SourceManager const&) const' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/clangtoolastreader.cpp:817: undefined reference to `clang::SourceLocation::printToString(clang::SourceManager const&) const' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/clangtoolastreader.cpp.o: In function `clang::NamedDecl::getNameAsString() const': /usr/lib/llvm-11/include/clang/AST/Decl.h:266: undefined reference to `clang::DeclarationName::getAsString() const' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/cpp_clang.cpp.o: In function `ClangCppParser::loadCPP(Translator&, QList<QString> const&, ConversionData&, bool*)': /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/cpp_clang.cpp:197: undefined reference to `clang::tooling::CompilationDatabase::autoDetectFromDirectory(llvm::StringRef, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/cpp_clang.cpp:199: undefined reference to `clang::tooling::CompilationDatabase::autoDetectFromSource(llvm::StringRef, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/cpp_clang.cpp:203: undefined reference to `clang::tooling::CompilationDatabase::autoDetectFromDirectory(llvm::StringRef, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/cpp_clang.cpp:216: undefined reference to `clang::tooling::CompilationDatabase::loadFromDirectory(llvm::StringRef, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&)' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/cpp_clang.cpp.o: In function `operator()': /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/cpp_clang.cpp:237: undefined reference to `clang::tooling::ClangTool::ClangTool(clang::tooling::CompilationDatabase const&, llvm::ArrayRef<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::shared_ptr<clang::PCHContainerOperations>, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, llvm::IntrusiveRefCntPtr<clang::FileManager>)' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/cpp_clang.cpp:238: undefined reference to `clang::tooling::ClangTool::appendArgumentsAdjuster(std::__1::function<std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > (std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, llvm::StringRef)>)' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/cpp_clang.cpp:254: undefined reference to `clang::tooling::ClangTool::ClangTool(clang::tooling::CompilationDatabase const&, llvm::ArrayRef<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::shared_ptr<clang::PCHContainerOperations>, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, llvm::IntrusiveRefCntPtr<clang::FileManager>)' /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/lupdate/cpp_clang.cpp:255: undefined reference to `clang::tooling::ClangTool::appendArgumentsAdjuster(std::__1::function<std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > (std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, llvm::StringRef)>)' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/cpp_clang.cpp.o:(.data.rel.ro._ZTV32LupdatePreprocessorActionFactory[_ZTV32LupdatePreprocessorActionFactory]+0x20): undefined reference to `clang::tooling::FrontendActionFactory::runInvocation(std::__1::shared_ptr<clang::CompilerInvocation>, clang::FileManager*, std::__1::shared_ptr<clang::PCHContainerOperations>, clang::DiagnosticConsumer*)' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/cpp_clang.cpp.o:(.data.rel.ro._ZTV24LupdateToolActionFactory[_ZTV24LupdateToolActionFactory]+0x20): undefined reference to `clang::tooling::FrontendActionFactory::runInvocation(std::__1::shared_ptr<clang::CompilerInvocation>, clang::FileManager*, std::__1::shared_ptr<clang::PCHContainerOperations>, clang::DiagnosticConsumer*)' qttools/src/linguist/lupdate/CMakeFiles/lupdate.dir/lupdatepreprocessoraction.cpp.o: In function `clang::Preprocessor::getSpelling(clang::Token const&, bool*) const': /usr/lib/llvm-11/include/clang/Lex/Preprocessor.h:1717: undefined reference to `clang::Lexer::getSpelling(clang::Token const&, clang::SourceManager const&, clang::LangOptions const&, bool*)' clang: error: linker command failed with exit code 1 (use -v to see invocation) [2293/3031] /data/bdaci01/BioDataAnalysis/stable-artifacts-Ubuntu-Skylake-18.04-x86_64-clang11.1.0/Tools/lib/ccache/clang++ -DQFORMINTERNAL_NAMESPACE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_KEYWORDS -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII -DQT_NO_EXCEPTIONS -DQT_OPENGLWIDGETS_LIB -DQT_OPENGL_LIB -DQT_PRINTSUPPORT_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -Iqttools/src/linguist/linguist/linguist_autogen/include -I/home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/linguist -Iqttools/src/linguist/linguist -I/home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/linguist/../shared -Iqtbase/include -Iqtbase/include/QtCore -I/home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qtbase/mkspecs/linux-clang -Iqtbase/src/corelib -Iqtbase/include/QtCore/6.0.0 -Iqtbase/include/QtCore/6.0.0/QtCore -Iqtbase/include/QtGui -Iqtbase/src/gui -Iqtbase/include/QtGui/6.0.0 -Iqtbase/include/QtGui/6.0.0/QtGui -Iqtbase/include/QtPrintSupport -Iqtbase/include/QtWidgets -Iqttools/src/designer/src/uitools -Iqtbase/include/QtUiTools/6.0.0 -Iqtbase/include/QtUiTools/6.0.0/QtUiTools -Iqtbase/include/QtUiTools -Iqtbase/include/QtOpenGLWidgets -Iqtbase/include/QtOpenGL -stdlib=libc++ -g -fPIE -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Wextra -fno-exceptions -fPIC -pthread -std=c++17 -MD -MT qttools/src/linguist/linguist/CMakeFiles/linguist.dir/phraseview.cpp.o -MF qttools/src/linguist/linguist/CMakeFiles/linguist.dir/phraseview.cpp.o.d -o qttools/src/linguist/linguist/CMakeFiles/linguist.dir/phraseview.cpp.o -c /home/bdaci01/builds/6b652442/0/BioDataAnalysis/qt/qttools/src/linguist/linguist/phraseview.cpp