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
QtWS25 Last Chance

Enable Gstreamer in Qt5 configuration

Scheduled Pinned Locked Moved Installation and Deployment
49 Posts 8 Posters 39.1k 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.
  • M Offline
    M Offline
    MeowMeow
    wrote on 7 Aug 2013, 17:05 last edited by
    #17

    Yes. It's cross-compiling.

    1 Reply Last reply
    0
    • M Offline
      M Offline
      MeowMeow
      wrote on 7 Aug 2013, 17:08 last edited by
      #18

      Yes, it's cross-compiling.

      1 Reply Last reply
      0
      • S Offline
        S Offline
        SGaist
        Lifetime Qt Champion
        wrote on 7 Aug 2013, 19:52 last edited by
        #19

        That's the kind of detail you should have mention earlier...

        First thing, did you install a cross-compiling environment ? Did you pass the correct parameters to configure to enable cross-compilation ? Did you get the cross-compiled version of the dependencies you need ?

        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 8 Aug 2013, 01:17 last edited by
          #20

          Dear SGalt,
          Sorry about mention cross-compiling lately.
          The cross-compiling is installed in my system, it is linaro-arm-linux-
          About parameters to configure, I think Qt can autodetect Gstreamer so I don't pass any option for Gstreamer in command.
          When configuration, nomally it will display information why option is disable, which errors occurs... so I can fix errors and option is enable . With Gstreamer, nothing to display, it makes me confusion.
          Thank for your support.

          1 Reply Last reply
          0
          • M Offline
            M Offline
            MeowMeow
            wrote on 8 Aug 2013, 05:23 last edited by
            #21

            Are there any ideas?

            1 Reply Last reply
            0
            • S Offline
              S Offline
              SGaist
              Lifetime Qt Champion
              wrote on 8 Aug 2013, 08:28 last edited by
              #22

              You're configuration process fails while testing glib, do you have it for ARM ? Also can you post your complete configure command ?

              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 8 Aug 2013, 12:20 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
                • S Offline
                  S Offline
                  SGaist
                  Lifetime Qt Champion
                  wrote on 8 Aug 2013, 14:00 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 8 Aug 2013, 14:11 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
                    • S Offline
                      S Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on 8 Aug 2013, 14:31 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 8 Aug 2013, 15:52 last edited by
                        #27

                        I install them on target rootfs.

                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          SGaist
                          Lifetime Qt Champion
                          wrote on 8 Aug 2013, 19:46 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 6 Oct 2013, 18:29 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 14 Oct 2013, 06:41 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 4 Dec 2013, 07:44 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 30 Apr 2014, 17:14 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 30 Apr 2014, 17:39 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 15 Sept 2014, 10:51 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
                                      • S Offline
                                        S Offline
                                        SGaist
                                        Lifetime Qt Champion
                                        wrote on 15 Sept 2014, 14:34 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 15 Sept 2014, 14:54 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

                                          • Login

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