Skip to contentSkip to conversation

QtMultimedia and gstreamer-1.0

Buildroot Marco Trapanese 2 participants 10 messages May 15, 2016 – May 17, 2016

lore
Share & tools
lore
#1 lore raw

Hello Marco,

Quoted 8 lines · Marco Trapanese

Hello,
I'm trying to use QtMultimedia on my system (2016.05-git-01212-gabfaf47-dirty, attached the .config file). The QtMultimedia documentations says:

The minimum required version of GStreamer is 0.10.24. The 1.x series is also supported.

To build Qt Multimedia, you need the GStreamer library, base plugins, and development files for your system. To run applications that use Qt Multimedia, you might also need to install the following GStreamer plugins: 'good', 'ugly', 'bad', ffmpeg (0.10), and libav (1.x). These additional plugins contain various codecs for audio and video decoding, as well as the necessary components for using the camera APIs. The package names for GStreamer vary between Linux distributions; try searching for gstreamer or libgstreamer in your distribution's package repository to find suitable packages. I selected gstreamer 1.x, gst1-libav, and several plugins from base/good/bad/ugly. But I'm not sure what "development files" exactly means.

This means the header files etc. which are installed into the staging directory (and not into the target directory) which Qt needs to detect and compile with GStreamer support...

Quoted 4 lines

When I try to create a QtMultimedia class I get the following error:

defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer" Do you have any experience on this topic?

Should not happen ;-)

Last time I used this combination was with Buildroot 2015.11-rc3 and it worked for me with this (defconfig) additional package selection:

+BR2_PACKAGE_GSTREAMER1=y +BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOTESTSRC=y +BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA=y +BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_OGG=y +BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VORBIS=y +BR2_PACKAGE_GST1_PLUGINS_GOOD=y +BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUDIOPARSERS=y +BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUTODETECT=y +BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_DEBUGUTILS=y +BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ID3DEMUX=y +BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_FLAC=y +BR2_PACKAGE_DEJAVU=y
+BR2_PACKAGE_QT5=y +BR2_PACKAGE_QT5BASE_LICENSE_APPROVED=y +BR2_PACKAGE_QT5BASE_EXAMPLES=y +BR2_PACKAGE_QT5BASE_WIDGETS=y +BR2_PACKAGE_QT5BASE_FONTCONFIG=y +BR2_PACKAGE_QT5BASE_GIF=y +BR2_PACKAGE_QT5BASE_JPEG=y +BR2_PACKAGE_QT5BASE_PNG=y +BR2_PACKAGE_QT5MULTIMEDIA=y

...seems time to recheck it..., but needs some time...

Regards,
Peter

Quoted 6 lines

Thanks
Marco

#2 lore raw

Il 15/05/2016 10:03, Peter Seiderer ha scritto:

Quoted 3 lines

This means the header files etc. which are installed into the staging directory (and not into the target directory) which Qt needs to detect and compile with GStreamer support...

Thus, those files are needed only during the build process, they don't need to be copied to the target, do they?

I found a config.log in my qt5multimedia-5.6.0 output/build/ directory. It is attached to this email. It seems the gstreamer tests were successfully. Furthermore in the plugins/mediaservice subdirectory I find:

libgstaudiodecoder.so
libgstcamerabin.so
libgstmediacapture.so
libgstmediaplayer.so

which are installed on target under /usr/lib/qt/plugins/mediaservice/

By the way, on target their size is slightly smaller. This is because they are stripped or perhaps this may lead to an hidden problem? (just to be sure I tried to copy them to the target but the behavior is the same). I can rebuild all from scratch, but if it's correct it would be useless!

What else I should check?
Best regards
Marco

-------------- next part --------------
executing config test openal
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/openal && /home/femtotech/dev/buildroot/output/host/usr/bin/qmake -spec /home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/openal
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/openal && make
make[1]: ingresso nella directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/openal"
/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ -c -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -O2 -O3 -std=gnu++0x -fno-exceptions -Wall -W -fPIC -DQT_NO_MTDEV -DQT_NO_LIBINPUT -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I. -I/home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ -o .obj/main.o main.cpp main.cpp:37:19: fatal error: AL/al.h: File o directory non esistente

 #include <AL/al.h>
                   ^

compilation terminated.
Makefile:296: set di istruzioni per l'obiettivo ".obj/main.o" non riuscito
make[1]: *** [.obj/main.o] Errore 1
make[1]: uscita dalla directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/openal"
test openal FAILED
executing config test pulseaudio
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/pulseaudio && /home/femtotech/dev/buildroot/output/host/usr/bin/qmake -spec /home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/pulseaudio
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/pulseaudio && make
make[1]: ingresso nella directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/pulseaudio"
/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ -c -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -O2 -O3 -std=gnu++0x -fno-exceptions -Wall -W -fPIC -DQT_NO_MTDEV -DQT_NO_LIBINPUT -D_REENTRANT -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I. -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/glib-2.0 -I/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib/glib-2.0/include -I/home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ -o .obj/pulseaudio.o pulseaudio.cpp
/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -Wl,-O1 -Wl,--enable-new-dtags -o pulseaudio .obj/pulseaudio.o -lrt -lpthread -ldl -L/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lpulse-mainloop-glib -lpulse -lglib-2.0 -lintl
make[1]: uscita dalla directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/pulseaudio"
test pulseaudio succeeded
executing config test gstreamer
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer && /home/femtotech/dev/buildroot/output/host/usr/bin/qmake -spec /home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer && make
make[1]: ingresso nella directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer"
/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ -c -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -O2 -O3 -std=gnu++0x -pthread -pthread -pthread -pthread -pthread -fno-exceptions -Wall -W -fPIC -DQT_NO_MTDEV -DQT_NO_LIBINPUT -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I. -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/gstreamer-1.0 -I/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib/gstreamer-1.0/include -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/glib-2.0 -I/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib/glib-2.0/include -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include -I/home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ -o .obj/main.o main.cpp main.cpp:38:14: warning: unused parameter ?argc? [-Wunused-parameter]
int main(int argc, char** argv)

              ^
main.cpp:38:27: warning: unused parameter ?argv? [-Wunused-parameter]
 int main(int argc, char** argv)
                           ^

/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -Wl,-O1 -Wl,--enable-new-dtags -o gstreamer .obj/main.o -lrt -lpthread -ldl -L/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lgstaudio-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstpbutils-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lintl
make[1]: uscita dalla directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer"
test gstreamer succeeded
executing config test gstreamer_photography
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_photography && /home/femtotech/dev/buildroot/output/host/usr/bin/qmake -spec /home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_photography
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_photography && make
make[1]: ingresso nella directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_photography"
/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ -c -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -O2 -O3 -std=gnu++0x -pthread -pthread -pthread -pthread -pthread -fno-exceptions -Wall -W -fPIC -DQT_NO_MTDEV -DQT_NO_LIBINPUT -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I. -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/gstreamer-1.0 -I/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib/gstreamer-1.0/include -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/glib-2.0 -I/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib/glib-2.0/include -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include -I/home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ -o .obj/main.o main.cpp main.cpp:41:14: warning: unused parameter ?argc? [-Wunused-parameter]
int main(int argc, char** argv)

              ^
main.cpp:41:27: warning: unused parameter ?argv? [-Wunused-parameter]
 int main(int argc, char** argv)
                           ^

/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -Wl,-O1 -Wl,--enable-new-dtags -o gstreamer_photography .obj/main.o -lrt -lpthread -ldl -lgstphotography-1.0 -L/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lgstaudio-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstpbutils-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lintl
make[1]: uscita dalla directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_photography"
test gstreamer_photography succeeded
executing config test gstreamer_encodingprofiles
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_encodingprofiles && /home/femtotech/dev/buildroot/output/host/usr/bin/qmake -spec /home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_encodingprofiles
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_encodingprofiles && make
make[1]: ingresso nella directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_encodingprofiles"
/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ -c -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -O2 -O3 -std=gnu++0x -pthread -pthread -pthread -pthread -pthread -fno-exceptions -Wall -W -fPIC -DQT_NO_MTDEV -DQT_NO_LIBINPUT -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I. -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/gstreamer-1.0 -I/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib/gstreamer-1.0/include -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/glib-2.0 -I/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib/glib-2.0/include -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include -I/home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ -o .obj/main.o main.cpp main.cpp:39:14: warning: unused parameter ?argc? [-Wunused-parameter]
int main(int argc, char** argv)

              ^
main.cpp:39:27: warning: unused parameter ?argv? [-Wunused-parameter]
 int main(int argc, char** argv)
                           ^

/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -Wl,-O1 -Wl,--enable-new-dtags -o gstreamer_encodingprofiles .obj/main.o -lrt -lpthread -ldl -L/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lgstaudio-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstpbutils-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lintl
make[1]: uscita dalla directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_encodingprofiles"
test gstreamer_encodingprofiles succeeded
executing config test gstreamer_appsrc
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_appsrc && /home/femtotech/dev/buildroot/output/host/usr/bin/qmake -spec /home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_appsrc
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_appsrc && make
make[1]: ingresso nella directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_appsrc"
/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ -c -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -O2 -O3 -std=gnu++0x -pthread -pthread -pthread -pthread -pthread -fno-exceptions -Wall -W -fPIC -DQT_NO_MTDEV -DQT_NO_LIBINPUT -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I. -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/gstreamer-1.0 -I/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib/gstreamer-1.0/include -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/glib-2.0 -I/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib/glib-2.0/include -isystem /home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include -I/home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ -o .obj/main.o main.cpp main.cpp:38:14: warning: unused parameter ?argc? [-Wunused-parameter]
int main(int argc, char** argv)

              ^
main.cpp:38:27: warning: unused parameter ?argv? [-Wunused-parameter]
 int main(int argc, char** argv)
                           ^

/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -Wl,-O1 -Wl,--enable-new-dtags -o gstreamer_appsrc .obj/main.o -lrt -lpthread -ldl -L/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lgstaudio-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstpbutils-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lintl
make[1]: uscita dalla directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gstreamer_appsrc"
test gstreamer_appsrc succeeded
executing config test linux_v4l
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/linux_v4l && /home/femtotech/dev/buildroot/output/host/usr/bin/qmake -spec /home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/linux_v4l
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/linux_v4l && make
make[1]: ingresso nella directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/linux_v4l"
/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ -c -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -O2 -O3 -std=gnu++0x -fno-exceptions -Wall -W -fPIC -DQT_NO_MTDEV -DQT_NO_LIBINPUT -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I. -I/home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ -o .obj/main.o main.cpp main.cpp:36:14: warning: unused parameter ?argc? [-Wunused-parameter]
int main(int argc, char** argv)

              ^
main.cpp:36:27: warning: unused parameter ?argv? [-Wunused-parameter]
 int main(int argc, char** argv)
                           ^

/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -Wl,-O1 -Wl,--enable-new-dtags -o linux_v4l .obj/main.o -lrt -lpthread -ldl
make[1]: uscita dalla directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/linux_v4l"
test linux_v4l succeeded
executing config test resourcepolicy
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/resourcepolicy && /home/femtotech/dev/buildroot/output/host/usr/bin/qmake -spec /home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/resourcepolicy
Project ERROR: libresourceqt5 development package not found
test resourcepolicy FAILED
executing config test gpu_vivante
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gpu_vivante && /home/femtotech/dev/buildroot/output/host/usr/bin/qmake -spec /home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ "CONFIG -= qt debug_and_release app_bundle lib_bundle" /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gpu_vivante
+ cd /home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gpu_vivante && make
make[1]: ingresso nella directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gpu_vivante"
/home/femtotech/dev/buildroot/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabihf-g++ -c -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os --sysroot=/home/femtotech/dev/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot -O2 -O3 -std=gnu++0x -fno-exceptions -Wall -W -fPIC -DQT_NO_MTDEV -DQT_NO_LIBINPUT -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I. -I/home/femtotech/dev/buildroot/output/host/usr/mkspecs/devices/linux-buildroot-g++ -o .obj/main.o main.cpp main.cpp:37:20: error: ?GL_VIV_YV12? was not declared in this scope

 const int format = GL_VIV_YV12;
                    ^
main.cpp:39:14: warning: unused parameter ?argc? [-Wunused-parameter]
 int main(int argc, char** argv)
              ^
main.cpp:39:27: warning: unused parameter ?argv? [-Wunused-parameter]
 int main(int argc, char** argv)
                           ^

Makefile:296: set di istruzioni per l'obiettivo ".obj/main.o" non riuscito
make[1]: *** [.obj/main.o] Errore 1
make[1]: uscita dalla directory "/home/femtotech/dev/buildroot/output/build/qt5multimedia-5.6.0/config.tests/gpu_vivante" test gpu_vivante FAILED

#3 lore raw

Hello Marco,

Quoted 8 lines · Marco Trapanese

Il 15/05/2016 10:03, Peter Seiderer ha scritto:

Quoted 3 lines

This means the header files etc. which are installed into the staging directory (and not into the target directory) which Qt needs to detect and compile with GStreamer support...

Thus, those files are needed only during the build process, they don't need to be copied to the target, do they?

Yes...

Quoted 9 lines

I found a config.log in my qt5multimedia-5.6.0 output/build/ directory. It is attached to this email. It seems the gstreamer tests were successfully. Furthermore in the plugins/mediaservice subdirectory I find:

libgstaudiodecoder.so
libgstcamerabin.so
libgstmediacapture.so
libgstmediaplayer.so

Quoted 6 lines

which are installed on target under /usr/lib/qt/plugins/mediaservice/

By the way, on target their size is slightly smaller. This is because they are stripped or perhaps this may lead to an hidden problem? (just to be sure I tried to copy them to the target but the behavior is the same). I can rebuild all from scratch, but if it's correct it would be useless!

Yes the target files are stripped (to remove possible debug/linking information size overhead, but should not change functionality)...

Quoted 2 lines

What else I should check?

Would suspect some missing library....maybe I find some time tonight to do some local test to check/verify your problem...

Regards,
Peter

Quoted 3 lines

Best regards
Marco

#4 lore raw

Il 15/05/2016 14:05, Peter Seiderer ha scritto:

Quoted 2 lines

Would suspect some missing library....maybe I find some time tonight to do some local test to check/verify your problem...

I thank you very much. Please, feel free to ask me any other details or test if they may help you!

#5 lore raw

Hello Marco,

Quoted 8 lines · Marco Trapanese

Il 15/05/2016 14:05, Peter Seiderer ha scritto:

Quoted 2 lines

Would suspect some missing library....maybe I find some time tonight to do some local test to check/verify your problem...

I thank you very much. Please, feel free to ask me any other details or test if they may help you!

Buildroot with Qt5 and Qt5Multimedia using gstreamer1 packages still works for me (on RPi 3, buildroot master from git).....

Maybe try a complete rebuild? Try to find out why Qt5Multimedia plugin is not loaded, maybe a missing library (try strace and/or ldd)?

Mind to share your buildroot .config file?

Regards, Peter

#6 lore raw

Il 16/05/2016 22:18, Peter Seiderer ha scritto:

Quoted 3 lines

Buildroot with Qt5 and Qt5Multimedia using gstreamer1 packages still works for me (on RPi 3, buildroot master from git).....

Great!

Quoted 2 lines

Maybe try a complete rebuild? Try to find out why Qt5Multimedia plugin is not loaded, maybe a missing library (try strace and/or ldd)?

I will try to ldd files under /usr/lib/qt/plugins/

Quoted 1 line

Mind to share your buildroot .config file?

Here it is!
Thanks
Marco

-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config
Type: application/xml
Size: 93124 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20160516/b5cf2564/attachment-0001.wsdl>

#7 lore raw

Il 16/05/2016 22:22, Marco Trapanese ha scritto:

Quoted 1 line

I will try to ldd files under /usr/lib/qt/plugins/

I attach to this email the output for:

ldd libgstmediaplayer.so

please, how to read the results?
Two questions:

1) "checking sub-depends for '/blabla.so' " means it found the sub-depends, doesn't it?

2) what does "checking sub-depends for 'not found'" mean???

It doesn't found libQt5OpenGL:

Quoted 1 line

libQt5OpenGL.so.5 => not found (0x00000000)

I guess due to the missing of "opengl" module. I'm rebuilding Qt5... let's see if it fixes.

-------------- next part --------------

	libc.so.1 => /lib/libc.so.1 (0x76e91000)
	libpthread.so.1 => /lib/libpthread.so.1 (0x76e6e000)
	libdl.so.1 => /lib/libdl.so.1 (0x76e5a000)
	ld-uClibc.so.1 => /lib/ld-uClibc.so.1 (0x76f0a000)
	libc.so.1 => /lib/libc.so.1 (0x76eb4000)
	ld-uClibc.so.1 => /lib/ld-uClibc.so.1 (0x76f2d000)
	ld-uClibc.so.1 => /lib/ld-uClibc.so.1 (0x76f46000)
	libdl.so.1 => /lib/libdl.so.1 (0x76f32000)
	libc.so.1 => /lib/libc.so.1 (0x76eb9000)
	libc.so.1 => /lib/libc.so.1 (0x76ec2000)
	ld-uClibc.so.1 => /lib/ld-uClibc.so.1 (0x76f3b000)
	ld-uClibc.so.1 => /lib/ld-uClibc.so.1 (0x76f22000)

checking sub-depends for '/usr/lib/libqgsttools_p.so.1' checking sub-depends for '/usr/lib/libgstaudio-1.0.so.0' checking sub-depends for '/usr/lib/libgstvideo-1.0.so.0' checking sub-depends for '/usr/lib/libgstpbutils-1.0.so.0' checking sub-depends for '/usr/lib/libgstapp-1.0.so.0' checking sub-depends for '/usr/lib/libgstbase-1.0.so.0' checking sub-depends for '/usr/lib/libgstreamer-1.0.so.0' checking sub-depends for '/usr/lib/libgobject-2.0.so.0' checking sub-depends for '/usr/lib/libglib-2.0.so.0' checking sub-depends for '/usr/lib/libintl.so.8'
checking sub-depends for '/usr/lib/libQt5MultimediaWidgets.so.5' checking sub-depends for '/usr/lib/libQt5Multimedia.so.5' checking sub-depends for '/usr/lib/libQt5Widgets.so.5' checking sub-depends for '/usr/lib/libQt5Gui.so.5' checking sub-depends for '/usr/lib/libQt5Network.so.5' checking sub-depends for '/usr/lib/libQt5Core.so.5' checking sub-depends for '/lib/librt.so.1'
checking sub-depends for '/lib/libdl.so.1'
checking sub-depends for '/usr/lib/libGLESv2.so'
checking sub-depends for '/lib/libpthread.so.1'
checking sub-depends for '/usr/lib/libstdc++.so.6' checking sub-depends for '/lib/libm.so.1'
checking sub-depends for '/lib/libgcc_s.so.1'
checking sub-depends for '/lib/libc.so.1'
checking sub-depends for '/usr/lib/libgsttag-1.0.so.0' checking sub-depends for '/usr/lib/libgmodule-2.0.so.0' checking sub-depends for '/usr/lib/libffi.so.6'
checking sub-depends for '/usr/lib/libpcre.so.1'
checking sub-depends for 'not found'
checking sub-depends for '/usr/lib/libpulse.so.0' checking sub-depends for '/usr/lib/libpng16.so.16' checking sub-depends for '/usr/lib/libz.so.1'
checking sub-depends for '/usr/lib/libicui18n.so.57' checking sub-depends for '/usr/lib/libicuuc.so.57' checking sub-depends for '/usr/lib/libicudata.so.57' checking sub-depends for '/usr/lib/libpcre16.so.0' checking sub-depends for '/usr/lib/libgthread-2.0.so.0' checking sub-depends for '/usr/lib/libEGL.so'
checking sub-depends for '/usr/lib/libkhrn_client.so' checking sub-depends for '/usr/lib/libbcm_host.so' checking sub-depends for '/usr/lib/libvchostif.so' checking sub-depends for '/usr/lib/libvchiq_arm.so' checking sub-depends for '/usr/lib/libvcos.so'
checking sub-depends for '/usr/lib/libvcfiled_check.so' checking sub-depends for '/usr/lib/pulseaudio/libpulsecommon-8.0.so' checking sub-depends for '/usr/lib/libjson-c.so.2' checking sub-depends for '/usr/lib/libsndfile.so.1' checking sub-depends for '/usr/lib/libdbus-1.so.3' checking sub-depends for '/lib/libatomic.so.1'

	libqgsttools_p.so.1 => /usr/lib/libqgsttools_p.so.1 (0x00000000)
	libgstaudio-1.0.so.0 => /usr/lib/libgstaudio-1.0.so.0 (0x00000000)
	libgstvideo-1.0.so.0 => /usr/lib/libgstvideo-1.0.so.0 (0x00000000)
	libgstpbutils-1.0.so.0 => /usr/lib/libgstpbutils-1.0.so.0 (0x00000000)
	libgstapp-1.0.so.0 => /usr/lib/libgstapp-1.0.so.0 (0x00000000)
	libgstbase-1.0.so.0 => /usr/lib/libgstbase-1.0.so.0 (0x00000000)
	libgstreamer-1.0.so.0 => /usr/lib/libgstreamer-1.0.so.0 (0x00000000)
	libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00000000)
	libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00000000)
	libintl.so.8 => /usr/lib/libintl.so.8 (0x00000000)
	libQt5MultimediaWidgets.so.5 => /usr/lib/libQt5MultimediaWidgets.so.5 (0x00000000)
	libQt5Multimedia.so.5 => /usr/lib/libQt5Multimedia.so.5 (0x00000000)
	libQt5Widgets.so.5 => /usr/lib/libQt5Widgets.so.5 (0x00000000)
	libQt5Gui.so.5 => /usr/lib/libQt5Gui.so.5 (0x00000000)
	libQt5Network.so.5 => /usr/lib/libQt5Network.so.5 (0x00000000)
	libQt5Core.so.5 => /usr/lib/libQt5Core.so.5 (0x00000000)
	librt.so.1 => /lib/librt.so.1 (0x00000000)
	libdl.so.1 => /lib/libdl.so.1 (0x00000000)
	libGLESv2.so => /usr/lib/libGLESv2.so (0x00000000)
	libpthread.so.1 => /lib/libpthread.so.1 (0x00000000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00000000)
	libm.so.1 => /lib/libm.so.1 (0x00000000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00000000)
	libc.so.1 => /lib/libc.so.1 (0x00000000)
	libgsttag-1.0.so.0 => /usr/lib/libgsttag-1.0.so.0 (0x00000000)
	libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00000000)
	libffi.so.6 => /usr/lib/libffi.so.6 (0x00000000)
	libpcre.so.1 => /usr/lib/libpcre.so.1 (0x00000000)
	libQt5OpenGL.so.5 => not found (0x00000000)
	libpulse.so.0 => /usr/lib/libpulse.so.0 (0x00000000)
	libpng16.so.16 => /usr/lib/libpng16.so.16 (0x00000000)
	libz.so.1 => /usr/lib/libz.so.1 (0x00000000)
	libicui18n.so.57 => /usr/lib/libicui18n.so.57 (0x00000000)
	libicuuc.so.57 => /usr/lib/libicuuc.so.57 (0x00000000)
	libicudata.so.57 => /usr/lib/libicudata.so.57 (0x00000000)
	libpcre16.so.0 => /usr/lib/libpcre16.so.0 (0x00000000)
	libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00000000)
	/lib/ld-uClibc.so.1 => /lib/ld-uClibc.so.1 (0x00000000)
	libEGL.so => /usr/lib/libEGL.so (0x00000000)
	libkhrn_client.so => /usr/lib/libkhrn_client.so (0x00000000)
	libbcm_host.so => /usr/lib/libbcm_host.so (0x00000000)
	libvchostif.so => /usr/lib/libvchostif.so (0x00000000)
	libvchiq_arm.so => /usr/lib/libvchiq_arm.so (0x00000000)
	libvcos.so => /usr/lib/libvcos.so (0x00000000)
	libvcfiled_check.so => /usr/lib/libvcfiled_check.so (0x00000000)
	libpulsecommon-8.0.so => /usr/lib/pulseaudio/libpulsecommon-8.0.so (0x00000000)
	libjson-c.so.2 => /usr/lib/libjson-c.so.2 (0x00000000)
	libsndfile.so.1 => /usr/lib/libsndfile.so.1 (0x00000000)
	libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x00000000)
	libatomic.so.1 => /lib/libatomic.so.1 (0x00000000)
	not a dynamic executable
#8 lore raw

Hello Marco,

Quoted 14 lines · Marco Trapanese

Il 16/05/2016 22:22, Marco Trapanese ha scritto:

Quoted 1 line

I will try to ldd files under /usr/lib/qt/plugins/

I attach to this email the output for:

ldd libgstmediaplayer.so

please, how to read the results?
Two questions:

1) "checking sub-depends for '/blabla.so' " means it found the sub-depends, doesn't it?

Quoted 9 lines

2) what does "checking sub-depends for 'not found'" mean???

It doesn't found libQt5OpenGL:

Quoted 1 line

libQt5OpenGL.so.5 => not found (0x00000000)

I guess due to the missing of "opengl" module.
I'm rebuilding Qt5... let's see if it fixes.

Enabling 'BR2_PACKAGE_QT5BASE_OPENGL_LIB=y' and doing

	$ rm build/qt5base-5.6.0/.stamp_staging_installed
	$ rm build/qt5base-5.6.0/.stamp_target_installed
	$ make

(and copy the new image to sd card, or copy only the missing libQt5OpenGL.so.5) should do the trick...

Patch for qt5multimedia follows....

Regards,
Peter

#9 lore raw

Yes, it works. Anyway I didn't find that requisite in the QtMultimedia docs

Best regards
Marco
Il 17/Mag/2016 12:58, "Peter Seiderer" <[email protected]> ha scritto:

Quoted 35 lines

Hello Marco,

Quoted 14 lines · Marco Trapanese

Il 16/05/2016 22:22, Marco Trapanese ha scritto:

Quoted 1 line

I will try to ldd files under /usr/lib/qt/plugins/

I attach to this email the output for:

ldd libgstmediaplayer.so

please, how to read the results?
Two questions:

1) "checking sub-depends for '/blabla.so' " means it found the sub-depends, doesn't it?

Quoted 9 lines

2) what does "checking sub-depends for 'not found'" mean???

It doesn't found libQt5OpenGL:

Quoted 1 line

libQt5OpenGL.so.5 => not found (0x00000000)

I guess due to the missing of "opengl" module.
I'm rebuilding Qt5... let's see if it fixes.

Enabling 'BR2_PACKAGE_QT5BASE_OPENGL_LIB=y' and doing

        $ rm build/qt5base-5.6.0/.stamp_staging_installed
        $ rm build/qt5base-5.6.0/.stamp_target_installed
        $ make
Quoted 9 lines

(and copy the new image to sd card, or copy only the missing libQt5OpenGL.so.5)
should do the trick...

Patch for qt5multimedia follows....

Regards,
Peter

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20160517/fdc4fa54/attachment.html>