Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. Enable Gstreamer in Qt5 configuration
Forum Updated to NodeBB v4.3 + New Features

Enable Gstreamer in Qt5 configuration

Scheduled Pinned Locked Moved Installation and Deployment
49 Posts 8 Posters 40.9k 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.
  • M Offline
    M Offline
    MeowMeow
    wrote on last edited by
    #23

    Dear SGalt,
    I have just installed glib2.0, libglib2.0, libglib2.0-dev, libqtglib2.0 before.
    @
    ../gcc-linaro-arm-linux-gnueabi-2012.03-20120326_linux/bin/arm-linux-gnueabi-g++ --sysroot=[TARGET_ROOTFS] -o glib glib.o -L[TARGET_ROOTFS]/usr/lib -L[TARGET_ROOTFS]/usr/lib/arm-linux-gnueabi -L[TARGET_ROOTFS/lib/arm-linux-gnueabi -lpthread -ldl -lGLESv2 -lEGL -lIMGegl -lsrv_um -lgmodule-2.0 -lgobject-2.0 -lffi -ldbus-1 -lpcre --sysroot=[TARGET_ROOTFS] -pthread -lgthread-2.0 -lrt -lglib-2.0

    /arm-linux-gnueabi/bin/ld: note: 'clock_gettime@@GLIBC_2.4' is defined in DSO ../lib/arm-linux-gnueabi/librt.so.1 so try adding it to the linker command line
    /lib/arm-linux-gnueabi/librt.so.1: could not read symbols: Invalid operation
    collect2: ld returned 1 exit status
    make: *** [glib] Error 1
    Glib disabled.
    @
    librt.so.1 exist in /lib/arm-linux-gnueabi
    I try to search solution in Google and many answer is add " -lrt" but you can see that it exist in my command.

    This is my complete configure command
    @
    ./configure -confirm-license -opensource -v -arch arm -device linux-xxx-g++ -prefix /opt/share/qt5 -device-option CROSS_COMPILE=/home/gcc-linaro-arm-linux-gnueabi-2012.03-20120326_linux/bin/arm-linux-gnueabi- -sysroot /home/rootfs_br -debug -continue -opengl es2 -pkg-config -dbus -icu
    @

    Note : linux-xxx-g++ exist in qt-everywhere.../qtbase/mkspecs/devices/

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #24

      Since you are cross-compiling, you also need to either get the ARM version of these libraries or cross-compile them.

      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
      • M Offline
        M Offline
        MeowMeow
        wrote on last edited by
        #25

        Yes, i get the libraries - armel version, they are debian file and i install them by command "dpkg".

        1 Reply Last reply
        0
        • SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #26

          Where did you install them ?

          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
          • M Offline
            M Offline
            MeowMeow
            wrote on last edited by
            #27

            I install them on target rootfs.

            1 Reply Last reply
            0
            • SGaistS Offline
              SGaistS Offline
              SGaist
              Lifetime Qt Champion
              wrote on last edited by
              #28

              Then how can the configure script find the libraries ?

              One way to do that is to copy the libraries and headers from your target rootfs in your toolchain directories

              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
              • _ Offline
                _ Offline
                _Mark_
                wrote on last edited by
                #29

                Hello, I know this thread is quite old but I'm running into the same issues. I mounted the target's rootfs in a local folder and I set the sysroot parameter to that path.

                In that folder there is the complete arm filesystem with these packages installed:

                @
                libgstreamer0.10-dev
                libgstreamer-plugins-base0.10-dev
                gstreamer-tools
                gstreamer0.10-plugins-bad
                gstreamer0.10-plugins-good
                gstreamer0.10-plugins-ugly
                libglib2.0-dev
                libglib2.0-0
                libqtglib-2.0-0
                @

                Here the configure command:

                @
                ./configure -opengl es2 -device linux-rasp-pi-g++ -device-option CROSS_COMPILE=~/dev/rpi/gcc-4.7-linaro-rpi-gnueabihf/bin/arm-linux-gnueabihf- -sysroot /mnt/rasp-pi-rootfs -opensource -confirm-license -optimized-qmake -reduce-relocations -reduce-exports -release -developer-build -make libs -prefix /usr/local/qt5pi -no-pch -nomake examples -nomake tests -silent
                @

                Anyway both GLib and GStreamer supports are disabled. Here the related errors:

                @
                Glib auto-detection... ()
                compiling glib.cpp
                glib.cpp: In function ‘int main(int, char**)’:
                glib.cpp:48:19: warning: variable ‘context’ set but not used [-Wunused-but-set-variable]
                glib.cpp:55:38: warning: ‘pollfd’ is used uninitialized in this function [-Wuninitialized]
                linking glib
                /home/femtotech/dev/rpi/gcc-4.7-linaro-rpi-gnueabihf/bin/../lib/gcc/arm-linux-gnueabihf/4.7.2/../../../../arm-linux-gnueabihf/bin/ld: /mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/libglib-2.0.a(gmain.o): undefined reference to symbol 'clock_gettime@@GLIBC_2.4'
                /home/femtotech/dev/rpi/gcc-4.7-linaro-rpi-gnueabihf/bin/../lib/gcc/arm-linux-gnueabihf/4.7.2/../../../../arm-linux-gnueabihf/bin/ld: note: 'clock_gettime@@GLIBC_2.4' is defined in DSO /mnt/rasp-pi-rootfs/lib/arm-linux-gnueabihf/librt.so.1 so try adding it to the linker command line
                /mnt/rasp-pi-rootfs/lib/arm-linux-gnueabihf/librt.so.1: could not read symbols: Invalid operation
                collect2: error: ld returned 1 exit status
                make: *** [glib] Error 1
                Glib disabled.
                @

                But the /mnt/rasp-pi-rootfs/lib/arm-linux-gnueabihf/librt.so.1 is there, actually.

                Any ideas?

                1 Reply Last reply
                0
                • M Offline
                  M Offline
                  MeowMeow
                  wrote on last edited by
                  #30

                  Dear Mark,
                  Please check the link to librt.so.1
                  Maybe it's broken

                  1 Reply Last reply
                  0
                  • _ Offline
                    _ Offline
                    _dmp
                    wrote on last edited by
                    #31

                    I cross compile Qt 5.2 for imx6 from source and ./configure just dont try find gstreamer from rootfs. I look at ./configure inside and dont find anything about gstreamer. What can I do?

                    1 Reply Last reply
                    0
                    • M Offline
                      M Offline
                      maatong
                      wrote on last edited by
                      #32

                      [quote author="_dmp" date="1386143087"]I cross compile Qt 5.2 for imx6 from source and ./configure just dont try find gstreamer from rootfs. I look at ./configure inside and dont find anything about gstreamer. What can I do?[/quote]

                      Have you solved this problem?
                      I'm working on it too.

                      https://www.linkedin.com/pub/yini-guo/71/4b3/4a0

                      1 Reply Last reply
                      0
                      • A Offline
                        A Offline
                        andreyc
                        wrote on last edited by
                        #33

                        I did not try to cross-compile neither Qt nor GStreamer. So this is just my guess.
                        On Linux Qt configure tries to find gstreamer using pkg-config utility.
                        pkg-config uses $PKG_CONFIG_PATH to look for all available packages.
                        The packages are the text files with simple structure and .pc extension.

                        Try to find gstreamer*.pc files in your cross-compiled gstreamer and if you find the files then append a path to these files to PKG_CONFIG_PATH environment variable and then run configure from Qt.

                        1 Reply Last reply
                        0
                        • M Offline
                          M Offline
                          moritzh
                          wrote on last edited by
                          #34

                          Is there meanwhile a solution on how to configure Qt5.3 to use gstreamer? I have the same Problem on the Raspberry Pi.

                          I'm using this tutorial: http://qt-project.org/wiki/Native_Build_of_Qt5_on_a_Raspberry_Pi
                          I ignored the change of "QT_CFLAGS_GSTREAMER=" in the configure script, because it is not there. Additionally I set the following environment variables before running configure to get "pkg-config ............. yes":
                          @PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig:/usr/lib/arm-linux-gnueabihf/pkgconfig:/usr/share/pkgconfig"
                          PKG_CONFIG_SYSROOT_DIR="/."
                          PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/lib/arm-linux-gnueabihf/pkgconfig:/usr/share/pkgconfig"@

                          I read a little bit in the configure script code and at the part where the "Configure summary" is generated I found nothing where it is possible to add additional Packages (for example found by pkg-config) so is it even possible that the configure script finds gstreamer or is it even searching?

                          1 Reply Last reply
                          0
                          • SGaistS Offline
                            SGaistS Offline
                            SGaist
                            Lifetime Qt Champion
                            wrote on last edited by
                            #35

                            Hi and welcome to devnet,

                            Did you install the gstreamer development packages ?

                            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
                            • M Offline
                              M Offline
                              moritzh
                              wrote on last edited by
                              #36

                              yes I have installed all packages which are listed on the "wiki page":http://qt-project.org/wiki/Native_Build_of_Qt5_on_a_Raspberry_Pi (first code section line 3). For gstreamer this are the following:
                              @libgstreamer0.10-dev
                              libgstreamer-plugins-base0.10-dev
                              gstreamer-tools
                              gstreamer0.10-plugins-good
                              gstreamer0.10-plugins-bad@

                              gstreamer itselfs works:
                              @gst-launch-0.10 videotestsrc ! video/x-raw-rgb, framerate=25/1, width=640, height=360 ! ffmpegcolorspace ! fbdevsink@

                              1 Reply Last reply
                              0
                              • SGaistS Offline
                                SGaistS Offline
                                SGaist
                                Lifetime Qt Champion
                                wrote on last edited by
                                #37

                                Did you do that on your Raspberry Pi ?

                                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
                                • M Offline
                                  M Offline
                                  moritzh
                                  wrote on last edited by
                                  #38

                                  yes, all direct on the pi, not cross compiling

                                  1 Reply Last reply
                                  0
                                  • SGaistS Offline
                                    SGaistS Offline
                                    SGaist
                                    Lifetime Qt Champion
                                    wrote on last edited by
                                    #39

                                    Do you have your Pi root filesystem accessible on your desktop computer ?

                                    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
                                    • M Offline
                                      M Offline
                                      moritzh
                                      wrote on last edited by
                                      #40

                                      yes i just had to put the Raspi SD Card in the Computer and mount it

                                      1 Reply Last reply
                                      0
                                      • SGaistS Offline
                                        SGaistS Offline
                                        SGaist
                                        Lifetime Qt Champion
                                        wrote on last edited by
                                        #41

                                        What parameters did you pass to configure ?

                                        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
                                        • M Offline
                                          M Offline
                                          moritzh
                                          wrote on last edited by
                                          #42

                                          I copied it from the wiki page: "http://qt-project.org/wiki/Native_Build_of_Qt5_on_a_Raspberry_Pi":http://qt-project.org/wiki/Native_Build_of_Qt5_on_a_Raspberry_Pi

                                          @./configure -v -opengl es2 -device linux-rasp-pi-g++ -device-option CROSS_COMPILE=/usr/bin/ -opensource -confirm-license -optimized-qmake -reduce-exports -release -qt-pcre -make libs -prefix /usr/local/qt5 &> output@

                                          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