Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt Creator and other tools
  4. Cannot build Doxygen plugin with QT Creator 3.1.1
Forum Updated to NodeBB v4.3 + New Features

Cannot build Doxygen plugin with QT Creator 3.1.1

Scheduled Pinned Locked Moved Qt Creator and other tools
3 Posts 2 Posters 2.2k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Sriep
    wrote on last edited by
    #1

    I recently started the nightmare of integrating the doxygen plugin with QT Creator 3.1.1
    Where I am now is trying to build the plugin.

    I have the trunk.r73.
    I run
    @
    ./opt/Qt/5.3/gcc_64/bin/qmake QTC_SOURCE_DIR=/home/piers/Qt/qt-creator
    QTC_BUILD_DIR=/home/piers/Qt/qtcdox_build
    LIBSROOT=/home/piers/Qt/qt-creator-build/lib
    DEST=/home/piers/Qt/qt-creator-build/lib/qtcreator/plugins/Piers
    @

    when I run make I get

    @
    In file included from ../../qt-creator/src/libs/cplusplus/Macro.h:52:0,
    from ../../qt-creator/src/libs/cplusplus/CppDocument.h:33,
    from ../../qt-creator/src/plugins/cpptools/cppmodelmanagerinterface.h:37,
    from ../../qt-creator/src/plugins/cpptools/cppmodelmanager.h:35,
    from doxygen.cpp:26:
    ../../qt-creator/src/libs/cplusplus/PPToken.h:33:33: fatal error: cplusplus/CPlusPlus.h: No such file or directory
    #include <cplusplus/CPlusPlus.h>
    @

    Which is quite correct. cplusplus/CPlusPlus.h is infact in
    @
    piers@ubMoloch:~/Qt$ locate cplusplus/CPlusPlus.h
    /home/piers/Qt/qt-creator/src/libs/3rdparty/cplusplus/CPlusPlus.h
    @

    And in the doxygen.pro file I have
    @
    INCLUDEPATH += $$QTC_SOURCE_DIR/src
    $$QTC_SOURCE_DIR/src/plugins
    $$QTC_SOURCE_DIR/src/libs
    $$QTC_SOURCE_DIR/src/libs/cplusplus
    $$QTC_SOURCE_DIR/src/libs/extensionsystem
    $$QTC_SOURCE_DIR/src/libs/utils
    $$QTC_SOURCE_DIR/src/shared
    $$QTC_SOURCE_DIR/src/shared/cplusplus
    $$QTC_SOURCE_DIR/src/3rdparty/cplusplus
    @

    In other words no src/libs/3rdparty/cplusplus included. I tried the obvious insertion of
    @
    $$QTC_SOURCE_DIR/src/libs/3rdparty/cplusplus
    @

    in doxygen.pro but no help.

    Any ideas. I am beging to suspect that the latest doxygen plugin might not support QT Creator 3.1.1 where the last entry is
    @
    73 59d 01h kofee /trunk/ 3.1.0 friendly
    @

    But it is porbably more likly that I have screwed up somewhere.

    Thaks for any help

    1 Reply Last reply
    0
    • S Offline
      S Offline
      Sriep
      wrote on last edited by
      #2

      Ok just an update. fixed above problme. Inserted

      @
      $$QTC_SOURCE_DIR/src/libs/3rdparty
      @

      into doxygen.pro.
      Now getting

      @
      undefined reference to `Core::IOptionsPage::staticMetaObject'
      collect2: error: ld returned 1 exit status
      make: *** [../../qt-creator-build/lib/qtcreator/plugins/Piers/libDoxygen.so] Error 1
      @

      Seems like lots undefined referenfces in doxygenplugi.cpp
      @
      rm -f libDoxygen.so
      g++ -Wl,-z,origin '-Wl,-rpath,$ORIGIN/../QtProject:$ORIGIN:$ORIGIN/..:$ORIGIN/../..' -Wl,--no-undefined -Wl,-O1 -Wl,-rpath,/opt/Qt/5.3/gcc_64/lib -shared -Wl,-soname,libDoxygen.so -o libDoxygen.so .obj/release-shared/doxygenplugin.o .obj/release-shared/doxygen.o .obj/release-shared/doxygensettings.o .obj/release-shared/doxygensettingswidget.o .obj/release-shared/doxygensettingsstruct.o .obj/release-shared/qrc_doxygen.o .obj/release-shared/moc_doxygenplugin.o .obj/release-shared/moc_doxygensettings.o .obj/release-shared/moc_doxygensettingswidget.o -L/home/piers/Qt/qt-creator-build/lib -L/home/piers/Qt/qt-creator-build/lib/qtcreator -L/home/piers/Qt/qt-creator-build/lib/qtcreator/plugins/QtProject/ -L/home/piers/Qt/qtcdox_build/lib/qtcreator -L/home/piers/Qt/qtcdox_build/lib/qtcreator/plugins/QtProject -L/home/piers/Qt/qtcdox_build/lib/qtcreator/plugins/Kofee -L/opt/Qt/5.3/gcc_64/lib -lQt5Widgets -lQt5Concurrent -lQt5Gui -lQt5Core -lGL -lpthread

      .obj/release-shared/doxygenplugin.o: In function DoxyPlugin::Internal::DoxygenPlugin::instance()': doxygenplugin.cpp:(.text+0x7c): undefined reference to Utils::writeAssertLocation(char const*)'
      .obj/release-shared/doxygenplugin.o: In function DoxyPlugin::Internal::DoxygenPlugin::doxyfileWizard()': doxygenplugin.cpp:(.text+0x15a3): undefined reference to Core::EditorManager::instance()'
      doxygenplugin.cpp:(.text+0x15a8): undefined reference to Core::EditorManager::currentEditor()' doxygenplugin.cpp:(.text+0x1abe): undefined reference to Core::MessageManager::instance()'
      doxygenplugin.cpp:(.text+0x1da1): undefined reference to Core::MessageManager::showOutputPane()' doxygenplugin.cpp:(.text+0x1dae): undefined reference to Core::MessageManager::write(QString const&, QFlagsCore::MessageManager::PrintToOutputPaneFlag)'
      .obj/release-shared/doxygenplugin.o: In function `DoxyPlugin::Internal::DoxygenPlugin::initialize(QStringList const&, QString*)':

      ... lots more
      @

      I guess what I would like is confirmation its my fault.

      1 Reply Last reply
      0
      • O Offline
        O Offline
        olzzen
        wrote on last edited by
        #3

        Have you solved this by now?

        Got it working by cleaning up the project file:

        @
        DEFINES += DOXYGEN_LIBRARY
        TEMPLATE = lib
        QTC_PLUGIN_NAME = Doxygen

        PROVIDER = Kofee

        Define QTC_SOURCE_DIR to the location of Qt Creator sources (i.e: ~/dev/qtcreator/qt-creator-src/)

        QTC_SOURCE_DIR = /home/MYUSER/Downloads/qt-creator-opensource-src-3.2.0-rc1/

        HEADERS += doxygenplugin.h
        doxygen_global.h \
        doxygenconstants.h
        doxygen.h
        doxygensettings.h
        doxygensettingswidget.h
        doxygensettingsstruct.h

        SOURCES += doxygenplugin.cpp
        doxygen.cpp
        doxygensettings.cpp
        doxygensettingswidget.cpp
        doxygensettingsstruct.cpp

        FORMS += doxygensettingswidget.ui

        RESOURCES += doxygen.qrc

        OTHER_FILES += Doxygen.pluginspec \
        Doxygen.json \
        qtcreator-doxygen_dependencies.pri
        doxygen.png

        INCLUDEPATH += $$QTC_SOURCE_DIR/src \
        $$QTC_SOURCE_DIR/src/plugins \
        $$QTC_SOURCE_DIR/src/libs \
        $$QTC_SOURCE_DIR/src/libs/cplusplus \
        $$QTC_SOURCE_DIR/src/libs/extensionsystem \
        $$QTC_SOURCE_DIR/src/libs/utils \
        $$QTC_SOURCE_DIR/src/shared \
        $$QTC_SOURCE_DIR/src/shared/cplusplus
        $$QTC_SOURCE_DIR/src/libs/3rdparty
        @

        Hope this helps, if still a problem?!

        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved