Problems with GStreamer- video player (with phonon) on embedded Linux (Qt 4.8.4)
-
anybody? It would be great to get some ideas, they doesn't need to solve my problem - right now I haven't the faintest idea what could be my next stept to solve the problem...
-
Seems like it is not able to find the libraries.
Can you confirm that all necessary libraries are copied? if you have ldd for the target you can run it on your binary to check what libraries are not found
-
Hi and welcome to devnet,
If your device can boot on the network you could use a NFS as root filesystem. That will give you enough space for you current development.
In a second phase you can build Qt statically but beware of the licensing issues. You can also copy only the Qt libraries you are using i.e. if you don't make use of Sql you can avoid install it.
-
Thank you very much
I checked with ldd and all the libraries are linked - thats fine. I copied all nessasrry Qt libs too.
But right now I am not sure if the gstreamer plugin ( libphonon_gstreamer.so) can find or has all needed libraries - during compilation I had to include libffi.a and libgstreamer-0.10.a but I installed them on the device at the same path like on my developsystem. Any Idea how I can check that or where I have to install them- As mentioned I can't install all libs I crosscompiled for the phonon framework on the device
Thanks again
-
You can try to run ldd on the plugins/libraries on your device to see if something is missing
-
Have you ensured that you have following packages installed?
libgstreamer0.10-dev
libgstreamer-plugins-base0.10-dev
gstreamer0.10-plugins-good
gstreamer0.10-plugins-bad -
Thanks again
But I didn't solve my problem yet.
I tried ldd on my plugin ( libphonon_gstreamer.so): look okay right? libphonon.so.4 => /lib/libphonon.so.4 (0x4036c000)
libQtGui.so.4 => /lib/libQtGui.so.4 (0x403bb000)
libQtNetwork.so.4 => /lib/libQtNetwork.so.4 (0x40d05000)
libQtCore.so.4 => /lib/libQtCore.so.4 (0x40dfb000)
libpthread.so.0 => /lib/libpthread.so.0 (0x41150000)
libstdc++.so.6 => /lib/libstdc++.so.6 (0x41172000)
libm.so.6 => /lib/libm.so.6 (0x41244000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x412e7000)
libc.so.6 => /lib/libc.so.6 (0x41310000)
libdl.so.2 => /lib/libdl.so.2 (0x4144d000)
librt.so.1 => /lib/librt.so.1 (0x4145b000)
/lib/ld-linux.so.3 (0x2a000000)Btw in included the plugin, libffi and libgstreamer-0.10 like this , is that okay?
LIBS += -L/usr/local/Trolltech/QtEmbedded-4.8.4-arm/plugins/phonon_backend/ -lphonon_gstreamer
LIBS += -L/opt/x/lib/ -lffi -lgstreamer-0.10 -lgstbase-0.10
I also included after i read shrikantds post libgstbase (good and bad are optional for the gstreamer aren't they?) but sadly nothing...
I am really sorry I didn't figured it out yet...
-
You should rather have copied your QtEmbedded in the same folders on your arm device (libs and plugins and fonts). Meaning in /usr/local/Trolltech/QtEmbbeded-4.8.4.
-
thank your I copied my libs to /usr/local/Trolltech/QtEmbedded-4.8.4/lib but my application still isn't able to find the gstreamer plugin...
-
You also have to copy the plugins dir (at least the content that you use)
-
thanks but i already copied the complied plugin folder, the folder /usr/local/Trolltech/QtEmbedded-4.8.4/plugin I found on my development PC to my device.
-
Just to be sure: did you made a typo here with "plugin" ? Otherwise it's "plugins"
-
jep I'm sorry that's a typo, so for examle the libphonon_gstreamer.so is copied at:
/usr/local/Trolltech/QtEmbedded-4.8.4-arm/plugins/phonon_backend -
Ok, then next step:
set this
@QT_DEBUG_PLUGINS=1@
on your command line before starting your application, that should give you the plugin loading error -
First of all thank you very much for your help SGaist, that's really great and very nice :)
But I tried export QT_DEBUG_PLUGINS=1 befor starting my application, but nothing special happens (i also tried on my deveopment system, nothing, too)
QT_DEBUG_PLUGINS=1
./phon -qws
If I check that enviroment variable, it's set ...
echo $QT_DEBUG_PLUGINS
1 -
Are you running a debug or release build of your application (Right now i'm not sure whether this could change the output when using QT_DEBUG_PLUGIN) ?
-
mh I had release build but i changed to debug (CONFIG += debug) but QT_DEBUG_PLUGINS dosen't work..
-
Do you also have the debug lib from Qt on your target ?
-
I wan't in town yesterday so I couldn't test that yesterday - sorry for that
I'm sorry but I can't find the debug lib...I crosscompild my Qt again and added the option - debug... but no debug lib was created- and also with the libs I compiled with the debug options, the QT_DEBUG_PLUGINS dosn't work
BTW I also set the PluginPath with QT_PLUGIN_PATH=... but that wasn't successful neither.
Also included: qDebug()<<QLibraryInfo::location(QLibraryInfo::PluginsPath);
It shows the correct Path("/usr/local/Trolltech/QtEmbedded-4.8.4-arm/plugins"
), where the plugin is installed... -
Did you do a clean build ?