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>