Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Help with QtGStreamer undefined reference to QGST::init

Help with QtGStreamer undefined reference to QGST::init

Scheduled Pinned Locked Moved General and Desktop
qtgstreamer
19 Posts 2 Posters 10.2k Views
  • 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.
  • J Offline
    J Offline
    JackCWallace
    wrote on 2 Jun 2015, 19:45 last edited by
    #1

    I am having some trouble with implementing QtGStreamer with QT. I have downloaded the source code for QtGStreamer and put it in "C:/qt-gstreamer-1.2.0" I am trying to run one of the examples that was provided, the player example.

    Here is my code:

    player.pro

    TEMPLATE = app
    TARGET = player
    
    CONFIG += silent
    
    CONFIG += pkgconfig
    
    contains(QT_VERSION, ^4\\..*) {
        PKGCONFIG += QtGStreamer-1.0 QtGStreamerUi-1.0 QtGlib-2.0 QtGStreamerUtils-1.0
        QT += widgets
    }
    contains(QT_VERSION, ^5\\..*) {
        PKGCONFIG += Qt5GStreamer-1.0 Qt5GStreamerUi-1.0 Qt5Glib-2.0 Qt5GStreamerUtils-1.0 Qt5GStreamerQuick-1.0
        QT += widgets \
            enginio
    }
    
    QMAKE_CXXFLAGS += -std=c++0x
    
    DEFINES += QT_NO_KEYWORDS
    
    HEADERS += mediaapp.h player.h
    SOURCES += main.cpp mediaapp.cpp player.cpp
    
    INCLUDEPATH += C:\qt-gstreamer-1.2.0\src \
        C:\boost_1_58_0
    

    main.cpp

    #include "mediaapp.h"
    #include <QApplication>
    #include <QGst/Init>
    
    
    int main(int argc, char *argv[])
    {
        QApplication app(argc, argv);
        QGst::init(&argc, &argv);
    
    
    
        MediaApp media;
        media.show();
    
        if (argc == 2) {
            media.openFile(argv[1]);
        }
    
        return app.exec();
    }
    

    There are other cpp files in the example, but they are all giving the same type of error. When I try to build the project, I get the error "undefined reference to 'QGst::init'" I cannot figure out what I am doing wrong. I think there needs to be something changed in the .pro file, but I couldn't find anything telling me what to do to fix it. I am on Windows, using with mingw compiler.

    1 Reply Last reply
    0
    • S Offline
      S Offline
      SGaist
      Lifetime Qt Champion
      wrote on 2 Jun 2015, 21:51 last edited by
      #2

      Hi and welcome to devnet,

      Might be a silly question but: do you have pkg-config running on Windows ?

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • J Offline
        J Offline
        JackCWallace
        wrote on 3 Jun 2015, 14:42 last edited by
        #3

        Yes, I do have it running, however now I am getting an error "QtCore/QtGlobal: No such file or directory, so I added the include path, "C:\Qt\Qt5.4.1\5.4\mingw491_32\include" but i am still getting the same error.

        1 Reply Last reply
        0
        • S Offline
          S Offline
          SGaist
          Lifetime Qt Champion
          wrote on 3 Jun 2015, 20:05 last edited by
          #4

          Then there's something wrong with either your project or your setup. You shouldn't need to add anything to find Qt's headers

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          1 Reply Last reply
          0
          • J Offline
            J Offline
            JackCWallace
            wrote on 3 Jun 2015, 20:17 last edited by
            #5

            Do you have any ideas that could help?

            1 Reply Last reply
            0
            • S Offline
              S Offline
              SGaist
              Lifetime Qt Champion
              wrote on 3 Jun 2015, 20:39 last edited by
              #6

              Recheck your pro file: do you have any line line QT = or INCLUDEPATH = ? Note the missing +

              Interested in AI ? www.idiap.ch
              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

              1 Reply Last reply
              0
              • J Offline
                J Offline
                JackCWallace
                wrote on 3 Jun 2015, 20:46 last edited by
                #7

                No, this is my code:

                # This is a qmake project file, provided as an example on how to use qmake with QtGStreamer.
                
                TEMPLATE = app
                TARGET = player
                
                # produce nice compilation output
                CONFIG += silent
                
                # Tell qmake to use pkg-config to find QtGStreamer.
                CONFIG += pkgconfig
                
                # Now tell qmake to link to QtGStreamer and also use its include path and Cflags.
                contains(QT_VERSION, ^4\\..*) {
                    PKGCONFIG += QtGStreamer-1.0 QtGStreamerUi-1.0
                }
                contains(QT_VERSION, ^5\\..*) {
                    PKGCONFIG += Qt5GStreamer-1.0 Qt5GStreamerUi-1.0
                }
                
                QT += core quick widgets
                CONFIG += qt console bootstrap
                
                # Recommended if you are using g++ 4.5 or later. Must be removed for other compilers.
                #QMAKE_CXXFLAGS += -std=c++0x
                
                # Recommended, to avoid possible issues with the "emit" keyword
                # You can otherwise also define QT_NO_EMIT, but notice that this is not a documented Qt macro.
                DEFINES += QT_NO_KEYWORDS
                
                # Input
                HEADERS += mediaapp.h player.h
                SOURCES += main.cpp mediaapp.cpp player.cpp
                
                INCLUDEPATH += C:\qt-gstreamer-1.2.0\src
                

                Line 3 and 4 (TEMPLATE and TARGET) made no difference when I added a '+' before the '='

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  SGaist
                  Lifetime Qt Champion
                  wrote on 3 Jun 2015, 20:48 last edited by
                  #8

                  TEMPLATE and TARGET should be used with = . They contain only one value.

                  Do you still have that error if you don't use pkgconfig ?

                  Interested in AI ? www.idiap.ch
                  Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                  J 1 Reply Last reply 3 Jun 2015, 20:50
                  0
                  • S SGaist
                    3 Jun 2015, 20:48

                    TEMPLATE and TARGET should be used with = . They contain only one value.

                    Do you still have that error if you don't use pkgconfig ?

                    J Offline
                    J Offline
                    JackCWallace
                    wrote on 3 Jun 2015, 20:50 last edited by
                    #9

                    @SGaist Yes, If I take out the line for PKGCONFIG, I still get the same error

                    1 Reply Last reply
                    0
                    • S Offline
                      S Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on 3 Jun 2015, 20:53 last edited by
                      #10

                      Then create a default widget project and see if you can built it

                      Interested in AI ? www.idiap.ch
                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                      J 1 Reply Last reply 3 Jun 2015, 21:01
                      0
                      • S SGaist
                        3 Jun 2015, 20:53

                        Then create a default widget project and see if you can built it

                        J Offline
                        J Offline
                        JackCWallace
                        wrote on 3 Jun 2015, 21:01 last edited by
                        #11

                        @SGaist Hi, I built an blank widget project, and I build one of the examples from Qt, and it worked fine

                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          SGaist
                          Lifetime Qt Champion
                          wrote on 3 Jun 2015, 21:11 last edited by
                          #12

                          Then keep that one and introduce one by one the elements of your other project until it either fails to build or build successfully

                          Interested in AI ? www.idiap.ch
                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                          1 Reply Last reply
                          0
                          • J Offline
                            J Offline
                            JackCWallace
                            wrote on 3 Jun 2015, 21:37 last edited by
                            #13

                            For every element in the pro file, it does not fail if I put '#include <QGst/Init>' then I get the error 'QtCore/QtGlobal: No such file or directory' Then if I comment it back out, and run qmake, then build, I get no error. If I comment it out I get the error 'cannot find boost/config.hpp' until I run qmake again.

                            I added 'C:\boost_1_58_0' to the include path, commented out '#include <QGst/Init>' ran qmake, and uncommented it, and it built with no error. Then I ran qmake again, and it game me the 'QtCore/QtGlobal' error again

                            1 Reply Last reply
                            0
                            • S Offline
                              S Offline
                              SGaist
                              Lifetime Qt Champion
                              wrote on 3 Jun 2015, 21:41 last edited by
                              #14

                              Ok… Then the silly question: do you have a QtGlobal file ? If so where is it ?

                              Interested in AI ? www.idiap.ch
                              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                              1 Reply Last reply
                              0
                              • J Offline
                                J Offline
                                JackCWallace
                                wrote on 4 Jun 2015, 14:27 last edited by
                                #15

                                Yes, I have 5 copies, they are in
                                "C:\Qt\Qt5.4.1\5.4\android_armv5\include\QtCore\QtGlobal"
                                "C:\Qt\Qt5.4.1\5.4\android_armv7\include\QtCore\QtGlobal"
                                "C:\Qt\Qt5.4.1\5.4\android_x86\include\QtCore\QtGlobal"
                                "C:\Qt\Qt5.4.1\5.4\mingw491_32\include\QtCore\QtGlobal"
                                "C:\Qt\Qt5.4.1\5.4\Src\qtbase\include\QtCore\QtGlobal"

                                Should I have a different one somewhere else? I am building with Mingw

                                1 Reply Last reply
                                0
                                • S Offline
                                  S Offline
                                  SGaist
                                  Lifetime Qt Champion
                                  wrote on 4 Jun 2015, 23:34 last edited by
                                  #16

                                  Did you modify your kits ?

                                  Interested in AI ? www.idiap.ch
                                  Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                  1 Reply Last reply
                                  0
                                  • J Offline
                                    J Offline
                                    JackCWallace
                                    wrote on 5 Jun 2015, 19:41 last edited by
                                    #17

                                    No, I even just got done uninstalling and reinstalling Qt 5.4.1 and QtCreator 3.3.2 and I just got the same QtCore error

                                    1 Reply Last reply
                                    0
                                    • J Offline
                                      J Offline
                                      JackCWallace
                                      wrote on 5 Jun 2015, 20:09 last edited by
                                      #18

                                      I then added the pkgconfig and config then instead of '#include <QGst/Init>' I did '#include <QGst/init.h>' and I got back to the error of undefined reference to 'QGst::init

                                      1 Reply Last reply
                                      0
                                      • S Offline
                                        S Offline
                                        SGaist
                                        Lifetime Qt Champion
                                        wrote on 6 Jun 2015, 08:10 last edited by
                                        #19

                                        Check the output of pkg-config for QtGStreamer, compare it to the build output of your application. Check the -I lines to see if something is currently modifying them in the wrong way

                                        Interested in AI ? www.idiap.ch
                                        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                        1 Reply Last reply
                                        0

                                        1/19

                                        2 Jun 2015, 19:45

                                        • Login

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