[gst-devel] need help: why can I not see the dynamicelements/plugin?
龚 元晖
yuanhui1021 at hotmail.com
Tue Jul 4 08:58:27 CEST 2006
Hi Thomas,
I run gst-inspect with option '--gst-debug=4', thus I can see that
gstreamer failed to load plugin
'/usr/lib/gstreamer-0.10/libgstcoreelements.so' due to not finding plugin
entry.
from source file gstplugin.c, function 'g_module_symbol()' return error.
GstPlugin *
gst_plugin_load_file (const gchar * filename, GError ** error)
{
[snip]...
ret = g_module_symbol (module, "gst_plugin_desc", &ptr);
if (!ret) {
GST_DEBUG ("Could not find plugin entry point in \"%s\"", filename);
g_set_error (error,
GST_PLUGIN_ERROR,
GST_PLUGIN_ERROR_MODULE,
"File \"%s\" is not a GStreamer plugin", filename);
g_module_close (module);
goto return_error;
}
[snip]...
}
why does this method fail to find plugin entry? how can I debug it further?
is there someone else can give me hints, or debug method to fight with it?
any comments are well appriciated.
Yuanhui
screen output is attached below:
/ $ gst-inspect --gst-debug=4
INFO (0x1a238 - 0:00:00.150005000) GST_INIT( 182)
gstquery.c(101):
_gst_query_initialize: init queries
INFO (0x1a238 - 0:00:00.200004000) GST_INIT( 182)
gstmessage.c(72)
:_gst_message_initializGCkÔinit messages
DEBUG (0x1a238 - 0:00:00.240002000) bin( 182)
gstbin.c(386):gs
t_bin_class_init: creating bin thread pool
DEBUG (0x1a238 - 0:00:00.250001000) GST_REGISTRY( 182)
gstregistry.c(39
5):gst_registry_add_feature:<registry0> adding feature 0x36140 (bin)
DEBUG (0x1a238 - 0:00:00.250004000) GST_REGISTRY( 182) gstregis'Ês
c(403
):gst_registry_add_feature:<registry0> emitting feature-added for bin
DEBUG (0x1a238 - 0:00:00.260003000) GST_REGISTRY( 182)
gstregistry.c(39
5):gst_registry_add_feature:<registry0> adding feature 0x37d90 (pipeline)
DEBUG (0x1a238 - 0:00:00.260006000) GST_REGISTRY( 182)
gstregistry.c(40
3):gst_registry_add_feature:<registry0> emitting feature-added for pipeline
INFO (0x1a238 - 0:00:00.260009000) GST_PLUGIN_LOADING( 182)
gstplugin.c(182)
:_gst_plugin_register_static: loaded static plugin "staticelements"
DEBUG (0x1a238 - 0:00:00.270002000) GST_REGISTRY( 182)
gstregistry.c(32
6):gst_registry_add_plugin:<registry0> adding plugin 0x35e38 for filename
"(NULL
)"
DEBUG (0x1a238 - 0:00:00.270004000) GST_REGISTRY( 182)
gstregistry.c(33
5):gst_registry_add_plugin:<registry0> emitting plugin-added for filename
"(NULL
)"
DEBUG (0x1a238 - 0:00:00.320006000) GST_INIT( 182)
gst.c(602):init_
post: Reading registry cache
DEBUG (0x1a238 - 0:00:00.330002000) GST_INIT( 182)
gst.c(612):init_
post: GST_PLUGIN_PATH set to /usr/lib/gstreamer-0.10
DEBUG (0x1a238 - 0:00:00.330005000) GST_REGISTRY( 182)
gstregistry.c(86
6):gst_registry_scan_path:<registry0> scanning path /usr/lib/gstreamer-0.10
DEBUG (0x1a238 - 0:00:00.340003000) GST_REGISTRY( 182)
gstregistry.c(82
8):gst_registry_scan_path_level:<registry0> file
/usr/lib/gstreamer-0.10/libgstc
oreelements.so not yet in registry
DEBUG (0x1a238 - 0:00:00.340006000) GST_PLUGIN_LOADING( 182)
gstplugin.c(388)
:gst_plugin_load_file: attempt to load plugin
"/usr/lib/gstreamer-0.10/libgstcor
eelements.so"
DEBUG (0x1a238 - 0:00:00.390000000) GST_PLUGIN_LOADING( 182)
gstplugin.c(426)
:gst_plugin_load_file: Could not find plugin entry point in
"/usr/lib/gstreamer-
0.10/libgstcoreelements.so"
DEBUG (0x1a238 - 0:00:00.390005000) GST_PLUGIN_LOADING( 182)
gstplugin.c(131)
:gst_plugin_finalize: finalizing plugin 0x3c210
DEBUG (0x1a238 - 0:00:00.390009000) GST_REGISTRY( 182)
gstregistry.c(82
8):gst_registry_scan_path_level:<registry0> file
/usr/lib/gstreamer-0.10/libgstc
oreindexers.so not yet in registry
DEBUG (0x1a238 - 0:00:00.400002000) GST_PLUGIN_LOADING( 182)
gstplugin.c(388)
:gst_plugin_load_file: attempt to load plugin
"/usr/lib/gstreamer-0.10/libgstcor
eindexers.so"
DEBUG (0x1a238 - 0:00:00.420006000) GST_PLUGIN_LOADING( 182)
gstplugin.c(426)
:gst_plugin_load_file: Could not find plugin entry point in
"/usr/lib/gstreamer-
0.10/libgstcoreindexers.so"
DEBUG (0x1a238 - 0:00:00.430000000) GST_PLUGIN_LOADING( 182)
gstplugin.c(131)
:gst_plugin_finalize: finalizing plugin 0x38c60
DEBUG (0x1a238 - 0:00:00.430005000) GST_REGISTRY( 182)
gstregistry.c(84
2):gst_registry_scan_path_level:<registry0> registry changed? 0
DEBUG (0x1a238 - 0:00:00.430007000) GST_REGISTRY( 182)
gstregistry.c(86
9):gst_registry_scan_path:<registry0> registry changed? 0
DEBUG (0x1a238 - 0:00:00.440000000) GST_INIT( 182)
gst.c(629):init_
post: GST_PLUGIN_SYSTEM_PATH not set
DEBUG (0x1a238 - 0:00:00.440003000) GST_REGISTRY( 182)
gstregistry.c(86
6):gst_registry_scan_path:<registry0> scanning path
/root/.gstreamer-0.10/plugin
s
DEBUG (0x1a238 - 0:00:00.440006000) GST_REGISTRY( 182)
gstregistry.c(86
9):gst_registry_scan_path:<registry0> registry changed? 0
DEBUG (0x1a238 - 0:00:00.440009000) GST_REGISTRY( 182)
gstregistry.c(86
6):gst_registry_scan_path:<registry0> scanning path
/home/yuanhui/sysroot/usr/li
b/gstreamer-0.10
DEBUG (0x1a238 - 0:00:00.450003000) GST_REGISTRY( 182)
gstregistry.c(86
9):gst_registry_scan_path:<registry0> registry changed? 0
DEBUG (0x1a238 - 0:00:00.450006000) GST_REGISTRY( 182)
gstregistry.c(88
5):_gst_registry_remove_cache_plugins:<registry0> removing6
+"plugins
staticelements: bin: Generic bin
staticelements: pipeline: Pipeline object
Total plugins: 1
Total features: 2
/ $
Hi Thomas,
Thanks very much for your email.
I configured gstreamer as following:
CC=arm-linux-gcc ./configure --prefix=/home/yuanhui/sysroot/usr
--host=arm-linux
Also I tried GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH environment
variables ,setting them as '/usr/lib' at arm+linux platform. it looks like
that "gst-inspect" still can not find the plugins.
Thanks again.
Yuanhui
see belowe:
/ $ cd usr/lib
/usr/lib $ ls | grep gst
gstreamer-0.10
libgstaudio-0.10.a
libgstaudio-0.10.la
libgstaudio-0.10.so
libgstaudio-0.10.so.0
libgstaudio-0.10.so.0.5.0
libgstbase-0.10.la
libgstbase-0.10.so
libgstbase-0.10.so.0
libgstbase-0.10.so.0.7.0
libgstcdda-0.10.a
libgstcdda-0.10.la
libgstcdda-0.10.so
libgstcdda-0.10.so.0
libgstcontroller-0.10.la
libgstcontroller-0.10.so
libgstcontroller-0.10.so.0
libgstcontroller-0.10.so.0.7.0
libgstdataprotocol-0.10.la
libgstdataprotocol-0.10.so
libgstdataprotocol-0.10.so.0
libgstdataprzzbj0.10.so.0.7.0
libgstinterfaces-0.10.a
libgstinterfaces-0.10.la
libgstinterfaces-0.10.so
libgstinterfaces-0.10.so.0
libgstinterfaces-0.10.so.0.5.0
libgstnet-0.10.la
libgs'[¢j0.10.so
libgstnet-0.10.so.0
libgstnet-0.10.so.0.7.0
libgstnetbuffer-0.10.alibgstreamer-0.10.la
libgstreamer-0.10.so
libgstreamer-0.10.so.0
libgstreamer-0.10.so.0.7.0
libgstriff-0.10.a
libgstriff-0.10.la
libgstriff-0.10.so
libgstriff-0.10.so.0
libgstriff-0.10.so.0.5.0
libgstrtp-0.10.a
libgstrtp-0.10.la
libgstrtp-0.10.so
libgstrtp-0.10.so.0
libgstrtp-0.10.so.0.5.0
libgsttag-0.10.a
libgsttag-0.10.la
libgsttag-0.10.so
libgsttag-0.10.so.0
libgsttag-0.10.so.0.5.0
libgstvideo-0.10.a
libgstvideo-0.10.la
libgstvideo-0.10.so
libgstvideo-0.10.so.0
libgstvideo-0.10.so.0.5.0
libgstnetbuffer-0.10.la
libgstnetbuffer-0.10.so
libgstnetbuffer-0.10.so.0
libgstreamer-0.10.la
libgstreamer-0.10.so
libgstreamer-0.10.so.0
libgstreamer-0.10.so.0.7.0
libgstriff-0.10.a
libgstriff-0.10.la
libgstriff-0.10.so
libgstriff-0.10.so.0
libgstriff-0.10.so.0.5.0
libgstrtp-0.10.a
libgstrtp-0.10.la
libgstrtp-0.10.so
libgstrtp-0.10.so.0
libgstrtp-0.10.so.0.5.0
libgsttag-0.10.a
libgsttag-0.10.la
libgsttag-0.10.so
libgsttag-0.10.so.0
libgsttag-0.10.so.0.5.0
libgstvideo-0.10.a
libgstvideo-0.10.la
libgstvideo-0.10.so
libgstvideo-0.10.so.0
libgstvideo-0.10.so.0.5.0
/usr/lib $ cd gstreamer-0.10/
/usr/lib/gstreamer-0.10 $ ls
libgstadder.a libgstffmpegcolorspace.a
libgstadder.la libgstffmpegcolorspace.la
libgstadder.so libgstffmpegcolorspace.so
libgstaudioconvert.a libgstplaybin.a
libgstaudioconvert.la libgstplaybin.la
libgstaudioconvert.so libgstplaybin.so
libgstaudiorate.a libgstsubparse.a
libgstaudiorate.la libgstsubparse.la
libgstaudiorate.so libgstsubparse.so
libgstaudioresample.a libgsttypefindfunctions.a
libgstaudioresample.la libgsttypefindfunctions.la
libgstaudioresample.so libgsttypefindfunctions.so
libgstaudiotestsrc.a libgstvideorate.a
libgstaudiotestsrc.la libgstvideorate.la
libgstaudiotestsrc.so libgstvideorate.so
libgstcoreelements.a libgstvideoscale.a
libgstcoreelements.la libgstvideoscale.la
libgstcoreelements.so libgstvideoscale.so
libgstcoreindexers.a libgstvideotestsrc.a
libgstcoreindexers.la libgstvideotestsrc.la
libgstcoreindexers.so libgstvideo§¦£rso
libgstdecodebin.a libgstvolume.a
libgstdecodebin.la libgstvolume.la
libgstdecodebin.so libgstvolume.so
/usr/lib/gstreamer-0.10 $ gst-inspect
staticelements: bin: Generic bin
staticelements: pipeline: Pipeline object
Total plugins: 1
Total features: 2
/usr/lib/gstreamer-0.10 $ echo $GST_PLUGIN_PATH
/usr/lib
/usr/lib/gstreamer-0.10 $ echo $GST_PLUGIN_SYSTEM_PATH
/usr/lib
/usr/lib/gstreamer-0.10 $
>From: Thomas Vander Stichele <thomas at apestaart.org>
>To: é¾?å
æ <yuanhui1021 at hotmail.com>
>CC: gstreamer-devel at lists.sourceforge.net
>Subject: Re: [gst-devel] need help: why can I not see the
dynamicelements/plugin?
>Date: Mon, 03 Jul 2006 13:41:31 +0200
>
>Hi,
>
>
> > >From my desktop linux, I can see that 'fakesrc' and 'fakesink' are
included
> > in
> > libgstcoreelements.so file. and I am sure that this file locates at my
> > arm+linux platform
> > under correct directory "/usr/lib/gstreamer-0.10/". Please see below
for
> > detailes:
>
>What did you pass to configure of gstreamer when cross-compiling it ?
>The arguments at configure time define where GStreamer will end up
>looking for plugins.
>
> > I tried to set LD_LIBRARY_PATH to '/usr/lib' and
'/usr/lib/gstreamer-0.10',
> > the
> > results are same.
>
>LD_LIBRARY_PATH is for *libraries*.
>
>GStreamer has two environment variables that affect where it will look
>for plugins; GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH.
>
>Try with those.
>
>Thomas
>
>
_________________________________________________________________
Ãâ·ÑÏÂÔØ MSN Explorer: http://explorer.msn.com/lccn
More information about the gstreamer-devel
mailing list