当C / C ++应用程序失败并显示以下CRITICAL消息时,您能告诉我如何找出导致错误的代码在哪里吗?
我试图在调试器中运行它,试图在程序失败时执行“ bt”操作。但是它没有显示代码在哪里导致CRITICAL:
(process:3155): GLib-GObject-CRITICAL **: /build/buildd/glib2.0-2.22.3/gobject/gtype.c:2458: initialization assertion failed, use IA__g_type_init() prior to this function
(process:3155): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed
(process:3155): GLib-GObject-CRITICAL **: /build/buildd/glib2.0-2.22.3/gobject/gtype.c:2458: initialization assertion failed, use IA__g_type_init() prior to this function
(process:3155): GLib-GObject-CRITICAL **: /build/buildd/glib2.0-2.22.3/gobject/gtype.c:2458: initialization assertion failed, use IA__g_type_init() prior to this function
(process:3155): GLib-GObject-CRITICAL **: /build/buildd/glib2.0-2.22.3/gobject/gtype.c:2458: initialization assertion failed, use IA__g_type_init() prior to this function
(process:3155): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(process:3155): GLib-GObject-CRITICAL **: /build/buildd/glib2.0-2.22.3/gobject/gtype.c:2458: initialization assertion failed, use IA__g_type_init() prior to this function
Run Code Online (Sandbox Code Playgroud)
您可以中断g_log,然后从那里进行回溯。
当您在 gdb 中运行它时,您应该将 --g-fatal-warnings 传递给您的应用程序。