[gst-embedded] Segmentation fault when running gst-inspect
Nigel Hsiung
nigelcz at hotmail.com
Thu Jan 8 21:36:12 PST 2009
Thanks Mike,
This is what i've got -
uclibc[bin]$ export GST_REGISTRY_FORK=no
uclibc[bin]$ export GST_DEBUG=5
uclibc[bin]$ gst-inspect-0.10 fakesrc
0:00:00.003672000 923 0x44c100 INFO GST_INIT gst.c:608:init_pre: Initializing GStreamer Core
Library version 0.10.21
0:00:00.005279000 923 0x44c100 INFO GST_INIT gst.c:609:init_pre: Using library installed in /
root/smp8634/dfb_install/lib
0:00:00.006426000 923 0x44c100 INFO GST_INIT gst.c:619:init_pre: Linux uclibc 2.6.15-moto01 #
233 PREEMPT Thu Nov 27 15:25:59 CST 2008 mips
The gdb output shows that the segmentation is happening here -
1794 if (group->post_parse_func)
(gdb)
1796 if (!(* group->post_parse_func) (context, group,
(gdb)
Program received signal SIGSEGV, Segmentation fault.
I've only set LD_LIBRARY_PATH and nothing else. Any idea?
Thanks,
Nigel
The entire gdb output is copied here below
main (argc=2, argv=0x7f862d14) at gst-inspect.c:1332
1332 };
(gdb)
(gdb) next
1319 {
(gdb)
1332 };
(gdb)
1320 gboolean print_all = FALSE;
(gdb)
1332 };
(gdb)
1342 if (!g_thread_supported ())
(gdb)
1332 };
(gdb)
1342 if (!g_thread_supported ())
(gdb)
1332 };
(gdb)
1342 if (!g_thread_supported ())
(gdb)
1343 g_thread_init (NULL);
(gdb)
1345 ctx = g_option_context_new ("[ELEMENT-NAME | PLUGIN-NAME]");
(gdb)
1346 g_option_context_add_main_entries (ctx, options, GETTEXT_PACKAGE);
(gdb)
1347 g_option_context_add_group (ctx, gst_init_get_option_group ());
(gdb) step
gst_init_get_option_group () at gst.c:367
367 if (!g_thread_supported ()) {
(gdb)
368 g_warning ("The GStreamer function gst_init_get_option_group() was\n"
(gdb) next
367 if (!g_thread_supported ()) {
(gdb)
368 g_warning ("The GStreamer function gst_init_get_option_group() was\n"
(gdb)
367 if (!g_thread_supported ()) {
(gdb)
378 group = g_option_group_new ("gst", _("GStreamer Options"),
(gdb)
380 g_option_group_set_parse_hooks (group, (GOptionParseFunc) init_pre,
(gdb) next
383 g_option_group_add_entries (group, gst_args);
(gdb)
384 g_option_group_set_translation_domain (group, GETTEXT_PACKAGE);
(gdb)
390 }
(gdb) step
384 g_option_group_set_translation_domain (group, GETTEXT_PACKAGE);
(gdb)
390 }
(gdb)
IA__g_option_context_add_group (context=0x44d838, group=0x44db48)
at goption.c:366
366 {
(gdb)
369 g_return_if_fail (context != NULL);
(gdb)
370 g_return_if_fail (group != NULL);
(gdb)
371 g_return_if_fail (group->name != NULL);
(gdb)
372 g_return_if_fail (group->description != NULL);
(gdb)
373 g_return_if_fail (group->help_description != NULL);
(gdb)
375 for (list = context->groups; list; list = list->next)
(gdb) next
385 context->groups = g_list_append (context->groups, group);
(gdb)
386 }
(gdb) step
main (argc=2, argv=0x7f862d14) at gst-inspect.c:1348
1348 if (!g_option_context_parse (ctx, &argc, &argv, &err)) {
(gdb)
IA__g_option_context_parse (context=0x44d838, argc=0x7f862c38,
argv=0x7f862c3c, error=0x7f862b90) at goption.c:1550
1550 if (!g_get_prgname())
(gdb)
1545 {
(gdb)
1550 if (!g_get_prgname())
(gdb)
IA__g_get_prgname () at gutils.c:1898
1898 G_LOCK (g_prgname);
(gdb) next
1898 G_LOCK (g_prgname);
(gdb)
1923 G_UNLOCK (g_prgname);
(gdb)
1922 retval = g_prgname;
(gdb)
1923 G_UNLOCK (g_prgname);
(gdb)
1926 }
(gdb) step
1923 G_UNLOCK (g_prgname);
(gdb)
1926 }
(gdb)
IA__g_option_context_parse (context=0x44d838, argc=0x7f862c38,
argv=0x7f862c3c, error=0x7f862b90) at goption.c:1552
1552 if (argc && argv && *argc)
(gdb) next
1556 prgname = g_path_get_basename ((*argv)[0]);
(gdb)
1557 g_set_prgname (prgname);
(gdb)
1558 g_free (prgname);
(gdb)
1565 list = context->groups;
(gdb)
1566 while (list)
(gdb)
1568 GOptionGroup *group = list->data;
(gdb)
1572 if (!(* group->pre_parse_func) (context, group,
(gdb)
1570 if (group->pre_parse_func)
(gdb)
1572 if (!(* group->pre_parse_func) (context, group,
(gdb)
1570 if (group->pre_parse_func)
(gdb)
1572 if (!(* group->pre_parse_func) (context, group,
(gdb)
1577 list = list->next;
(gdb)
1566 while (list)
(gdb)
1580 if (context->main_group && context->main_group->pre_parse_func)
(gdb)
1587 if (argc && argv)
(gdb)
1593 for (i = 1; i < *argc; i++)
(gdb)
1598 if ((*argv)[i][0] == '-' && (*argv)[i][1] != '\0' && !stop_parsing)
(gdb)
1596 gboolean parsed = FALSE;
(gdb)
1598 if ((*argv)[i][0] == '-' && (*argv)[i][1] != '\0' && !stop_parsing)
(gdb)
1773 if (context->main_group &&
(gdb)
1403 for (j = 0; j < group->n_entries; j++)
(gdb)
1405 if (*index >= *argc)
(gdb)
1408 if (group->entries[j].long_name[0])
(gdb)
1409 continue;
(gdb)
1403 for (j = 0; j < group->n_entries; j++)
(gdb)
1773 if (context->main_group &&
(gdb)
1403 for (j = 0; j < group->n_entries; j++)
(gdb)
1408 if (group->entries[j].long_name[0])
(gdb)
1403 for (j = 0; j < group->n_entries; j++)
(gdb)
1773 if (context->main_group &&
(gdb)
1403 for (j = 0; j < group->n_entries; j++)
(gdb)
1408 if (group->entries[j].long_name[0])
(gdb)
1403 for (j = 0; j < group->n_entries; j++)
(gdb)
1773 if (context->main_group &&
(gdb)
1403 for (j = 0; j < group->n_entries; j++)
(gdb)
1778 if (!parsed && (has_unknown || (*argv)[i][0] == '-'))
(gdb)
1783 if (separator_pos > 0)
(gdb)
1789 list = context->groups;
(gdb)
1790 while (list)
(gdb)
1792 GOptionGroup *group = list->data;
(gdb)
1796 if (!(* group->post_parse_func) (context, group,
(gdb)
1794 if (group->post_parse_func)
(gdb)
1796 if (!(* group->post_parse_func) (context, group,
(gdb)
1794 if (group->post_parse_func)
(gdb)
1796 if (!(* group->post_parse_func) (context, group,
(gdb)
Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
_________________________________________________________________
Show them the way! Add maps and directions to your party invites.
http://www.microsoft.com/windows/windowslive/events.aspx
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-embedded/attachments/20090109/5bcfa348/attachment.htm>
More information about the Gstreamer-embedded
mailing list