Uploaded image for project: 'Qt Creator'
  1. Qt Creator
  2. QTCREATORBUG-17876

Clang code model fails to build with undefined reference to typeinfo

    XMLWordPrintable

Details

    • Bug
    • Resolution: Cannot Reproduce
    • Not Evaluated
    • None
    • Qt Creator 4.3.0-beta1
    • C/C++/Obj-C++ Support
    • None
    • Mageia Linux Cauldron x86_64, GCC 5.4.0

    Description

      I tried to compile the 4.3 git branch, commit 4fac31015fcbff4e287e1fc2e2f4c470bff91346. I use Qt 5.8 from the online installer. Configure command:

       LLVM_INSTALL_DIR=/usr ~/Development/Qt/5.8/gcc_64/bin/qmake -recursive
      

      Build fails with the following error:

      make[3]: Entering directory '/mnt/store/Development/qt-creator/build/src/tools/clangrefactoringbackend'
      g++ -Wl,-z,origin '-Wl,-rpath,$ORIGIN/../../lib/qtcreator:$ORIGIN/../../lib/qtcreator/plugins:$ORIGIN:$ORIGIN/..:$ORIGIN/../lib/qtcreator' -Wl,-z,origin -Wl,-rpath,/usr/lib64 -Wl,-O1 -Wl,-rpath,/home/nekit/Development/Qt/5.8/gcc_64/lib -o ../../../libexec/qtcreator/clangrefactoringbackend .obj/release-shared/refactoringcompilationdatabase.o .obj/release-shared/symbolfinder.o .obj/release-shared/symbollocationfinderaction.o .obj/release-shared/refactoringserver.o .obj/release-shared/macropreprocessorcallbacks.o .obj/release-shared/findusrforcursoraction.o .obj/release-shared/clangquery.o .obj/release-shared/clangtool.o .obj/release-shared/sourcerangeextractor.o .obj/release-shared/locationsourcefilecallbacks.o .obj/release-shared/clangrefactoringbackendmain.o   -L/mnt/store/Development/qt-creator/build/lib/qtcreator -lClangbackendipc -lSqlite -lUtils -lclangTooling -lclangIndex -lclangFrontend -lclangParse -lclangSerialization -lclangSema -lclangEdit -lclangAnalysis -lclangDriver -lclangDynamicASTMatchers -lclangASTMatchers -lclangToolingCore -lclangAST -lclangLex -lclangBasic -lLLVM-3.9 -lrt -ldl -ltinfo -lz -lm -L/home/nekit/Development/Qt/5.8/gcc_64/lib -lQt5Concurrent -lQt5Widgets -lQt5Gui -lQt5Network -lQt5Core -lGL -lpthread 
      .obj/release-shared/refactoringcompilationdatabase.o:(.data.rel.ro._ZTIN12ClangBackEnd30RefactoringCompilationDatabaseE[_ZTIN12ClangBackEnd30RefactoringCompilationDatabaseE]+0x10): undefined reference to `typeinfo for clang::tooling::CompilationDatabase'
      .obj/release-shared/symbolfinder.o:(.data.rel.ro._ZTIZN5clang7tooling24newFrontendActionFactoryIN12ClangBackEnd16USRFindingActionEEESt10unique_ptrINS0_21FrontendActionFactoryESt14default_deleteIS5_EEPT_PNS0_19SourceFileCallbacksEE28FrontendActionFactoryAdapter[_ZTIZN5clang7tooling24newFrontendActionFactoryIN12ClangBackEnd16USRFindingActionEEESt10unique_ptrINS0_21FrontendActionFactoryESt14default_deleteIS5_EEPT_PNS0_19SourceFileCallbacksEE28FrontendActionFactoryAdapter]+0x10): undefined reference to `typeinfo for clang::tooling::FrontendActionFactory'
      .obj/release-shared/symbolfinder.o:(.data.rel.ro._ZTIZN5clang7tooling24newFrontendActionFactoryIN12ClangBackEnd16USRFindingActionEEESt10unique_ptrINS0_21FrontendActionFactoryESt14default_deleteIS5_EEPT_PNS0_19SourceFileCallbacksEEN28FrontendActionFactoryAdapter22ConsumerFactoryAdaptorE[_ZTIZN5clang7tooling24newFrontendActionFactoryIN12ClangBackEnd16USRFindingActionEEESt10unique_ptrINS0_21FrontendActionFactoryESt14default_deleteIS5_EEPT_PNS0_19SourceFileCallbacksEEN28FrontendActionFactoryAdapter22ConsumerFactoryAdaptorE]+0x10): undefined reference to `typeinfo for clang::ASTFrontendAction'
      .obj/release-shared/symbolfinder.o:(.data.rel.ro._ZTIZN5clang7tooling24newFrontendActionFactoryIN12ClangBackEnd26SymbolLocationFinderActionEEESt10unique_ptrINS0_21FrontendActionFactoryESt14default_deleteIS5_EEPT_PNS0_19SourceFileCallbacksEE28FrontendActionFactoryAdapter[_ZTIZN5clang7tooling24newFrontendActionFactoryIN12ClangBackEnd26SymbolLocationFinderActionEEESt10unique_ptrINS0_21FrontendActionFactoryESt14default_deleteIS5_EEPT_PNS0_19SourceFileCallbacksEE28FrontendActionFactoryAdapter]+0x10): undefined reference to `typeinfo for clang::tooling::FrontendActionFactory'
      .obj/release-shared/symbolfinder.o:(.data.rel.ro._ZTIZN5clang7tooling24newFrontendActionFactoryIN12ClangBackEnd26SymbolLocationFinderActionEEESt10unique_ptrINS0_21FrontendActionFactoryESt14default_deleteIS5_EEPT_PNS0_19SourceFileCallbacksEEN28FrontendActionFactoryAdapter22ConsumerFactoryAdaptorE[_ZTIZN5clang7tooling24newFrontendActionFactoryIN12ClangBackEnd26SymbolLocationFinderActionEEESt10unique_ptrINS0_21FrontendActionFactoryESt14default_deleteIS5_EEPT_PNS0_19SourceFileCallbacksEEN28FrontendActionFactoryAdapter22ConsumerFactoryAdaptorE]+0x10): undefined reference to `typeinfo for clang::ASTFrontendAction'
      .obj/release-shared/symbollocationfinderaction.o:(.data.rel.ro._ZTIN12ClangBackEnd25FindingSymbolsASTConsumerE[_ZTIN12ClangBackEnd25FindingSymbolsASTConsumerE]+0x10): undefined reference to `typeinfo for clang::ASTConsumer'
      .obj/release-shared/macropreprocessorcallbacks.o:(.data.rel.ro._ZTIN12ClangBackEnd26MacroPreprocessorCallbacksE[_ZTIN12ClangBackEnd26MacroPreprocessorCallbacksE]+0x10): undefined reference to `typeinfo for clang::PPCallbacks'
      .obj/release-shared/findusrforcursoraction.o:(.data.rel.ro._ZTIN12ClangBackEnd24FindDeclarationsConsumerE[_ZTIN12ClangBackEnd24FindDeclarationsConsumerE]+0x10): undefined reference to `typeinfo for clang::ASTConsumer'
      .obj/release-shared/clangquery.o:(.data.rel.ro._ZTIN12ClangBackEnd17CollectBoundNodesE[_ZTIN12ClangBackEnd17CollectBoundNodesE]+0x10): undefined reference to `typeinfo for clang::ast_matchers::MatchFinder::MatchCallback'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `u_strToLower_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_getStandardName_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_getAlias_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `uenum_next_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `u_strToUpper_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_setSubstChars_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_getTimeZoneDisplayName_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_fromUnicode_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `u_errorName_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `uenum_close_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_getDSTSavings_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_openTimeZoneIDEnumeration_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_setMillis_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucol_close_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucol_getSortKey_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_get_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucol_open_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_compareNames_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_clone_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_open_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucol_setAttribute_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_openCountryTimeZones_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_open_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_openTimeZones_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_countAliases_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_inDaylightTime_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_close_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_getAvailableName_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_getDefaultName_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucal_getDefaultTimeZone_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_toUnicode_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucol_strcoll_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_close_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_getMaxCharSize_56'
      /home/nekit/Development/Qt/5.8/gcc_64/lib/libQt5Core.so: undefined reference to `ucnv_countAvailable_56'
      collect2: error: ld returned 1 exit status
      Makefile:115: recipe for target '../../../libexec/qtcreator/clangrefactoringbackend' failed
      make[3]: *** [../../../libexec/qtcreator/clangrefactoringbackend] Error 1
      make[3]: Leaving directory '/mnt/store/Development/qt-creator/build/src/tools/clangrefactoringbackend'
      Makefile:251: recipe for target 'sub-clangrefactoringbackend-make_first' failed
      make[2]: *** [sub-clangrefactoringbackend-make_first] Error 2
      make[2]: Leaving directory '/mnt/store/Development/qt-creator/build/src/tools'
      Makefile:440: recipe for target 'sub-tools-make_first-ordered' failed
      make[1]: *** [sub-tools-make_first-ordered] Error 2
      make[1]: Leaving directory '/mnt/store/Development/qt-creator/build/src'
      Makefile:44: recipe for target 'sub-src-make_first-ordered' failed
      make: *** [sub-src-make_first-ordered] Error 2
      

      If I either remove LLVM_INSTALL_DIR=/usr or use 4.2 branch, it compiles.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            tjenssen Tim Jenssen
            krnekit Nikita Krupenko
            Votes:
            2 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes