After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 571099 - nemiver crashes on startup in nmv-hex-editor.cc:63?
nemiver crashes on startup in nmv-hex-editor.cc:63?
Status: RESOLVED DUPLICATE of bug 571892
Product: nemiver
Classification: Other
Component: general
trunk
Other Linux
: Normal normal
: ---
Assigned To: Nemiver maintainers
Nemiver maintainers
Depends on: 571892
Blocks:
 
 
Reported: 2009-02-09 21:30 UTC by Tobias Mueller
Modified: 2009-02-22 12:58 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
nemiver build log (29.37 KB, text/plain)
2009-02-14 14:59 UTC, Tobias Mueller
Details

Description Tobias Mueller 2009-02-09 21:30:10 UTC
I jhbuilded nemiver and I can't start it because it crashes immediately.

My nemiver revision is 978.


muelli@bigbox /tmp $ G_SLICE=debug-blocks GTK_DEBUG=misc jhbuild run gdb nemiver 
GNU gdb Fedora (6.8-29.fc10)
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu"...
(gdb) r
Starting program: /opt/gnome2/bin/nemiver 
[Thread debugging using libthread_db enabled]
[New Thread 0x7ffff3e54790 (LWP 1151)]
Gtk-Message: Failed to load module "gnomebreakpad": libgnomebreakpad.so: cannot open shared object file: No such file or directory

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff65e84b8 in IA__g_type_fundamental (type_id=3947952128)
    at gtype.c:3680
3680	  return node ? NODE_FUNDAMENTAL_TYPE (node) : 0;
Current language:  auto; currently c
Missing separate debuginfos, use: debuginfo-install libgcc-4.3.2-7.x86_64 libogg-1.1.3-9.fc9.x86_64 libpng-1.2.34-1.fc10.x86_64 libstdc++-4.3.2-7.x86_64 libvorbis-1.2.0-5.fc10.x86_64 ncurses-libs-5.6-20.20080927.fc10.x86_64
(gdb) where

Thread 1 (Thread 0x7ffff3e54790 (LWP 1151))

  • #0 IA__g_type_fundamental
    at gtype.c line 3680
  • #1 IA__g_object_new
    at gobject.c line 1057
  • #2 gtk_hex_new
    at gtkhex.c line 2071
  • #3 Priv
    at nmv-hex-editor.cc line 63
  • #4 Editor
    at nmv-hex-editor.cc line 82
  • #5 nemiver::Hex::Editor::create
    at nmv-hex-editor.cc line 88
  • #6 Priv
    at nmv-memory-view.cc line 106
  • #7 MemoryView
    at nmv-memory-view.cc line 286
  • #8 nemiver::DBGPerspective::get_memory_view
    at nmv-dbg-perspective.cc line 6143
  • #9 nemiver::DBGPerspective::set_show_memory_view
    at nmv-dbg-perspective.cc line 6364
  • #10 nemiver::DBGPerspective::init_perspective_menu_entries
    at nmv-dbg-perspective.cc line 2658
  • #11 nemiver::DBGPerspective::init_body
    at nmv-dbg-perspective.cc line 3276
  • #12 nemiver::DBGPerspective::do_init
    at nmv-dbg-perspective.cc line 4225
  • #13 nemiver::Workbench::do_init
    at nmv-workbench.cc line 399
  • #14 main
    at main.cc line 479
	workbench = {m_pointer = 0x6b5040}
	__PRETTY_FUNCTION__ = "int main(int, char**)"
(gdb) 
(gdb)
Comment 1 Jonathon Jongsma 2009-02-13 03:39:24 UTC
I have not been able to reproduce this here.  are you also using ghex from jhbuild or a system version?
Comment 2 Tobias Mueller 2009-02-14 14:56:05 UTC
Hey Jonathon :)

At least jhbuild builds ghex right before nemiver. I assume that the build process picks that up, but I can provide a build log so that you can ensure that it picks the jhbuilded version.

I am configuring like this:
./autogen.sh --prefix /opt/gnome2 --libdir '${exec_prefix}/lib64'  --disable-static --enable-maintainer-mode --disable-scrollkeeper --disable-gtk-doc --disable-docs 


And a typical compile line looks like this:

/bin/sh ../../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../.. -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include   -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include   -I/opt/gnome2/include/libxml2   -I/opt/gnome2/include/libgtop-2.0 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include   -I/opt/gnome2/include/glibmm-2.4 -I/opt/gnome2/lib64/glibmm-2.4/include -I/opt/gnome2/include/sigc++-2.0 -I/opt/gnome2/lib64/sigc++-2.0/include -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -DENABLE_NLS=1 -DDATADIR=\"/opt/gnome2/share\" -DSYSTEM_LIBDIR=\"/usr/lib\" -DNEMIVER_INSTALL_PREFIX=\"/opt/gnome2\" -DNEMIVER_SYSTEM_CONFIG_DIR=\"/opt/gnome2/lib64/nemiver/config\" -DNEMIVER_MODULES_DIR=\"/opt/gnome2/lib64/nemiver/modules\" -DNEMIVER_PLUGINS_DIR=\"/opt/gnome2/lib64/nemiver/plugins\" -DNEMIVER_VERSION=\"0.6.4\" -DGDB_PROG=\"/usr/bin/gdb\"    -g3 -pipe -O2 -fuse-cxa-atexit  -MT nmv-env.lo -MD -MP -MF .deps/nmv-env.Tpo -c -o nmv-env.lo nmv-env.cc
 g++ -DHAVE_CONFIG_H -I. -I../.. -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/opt/gnome2/include/libxml2 -I/opt/gnome2/include/libgtop-2.0 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/opt/gnome2/include/glibmm-2.4 -I/opt/gnome2/lib64/glibmm-2.4/include -I/opt/gnome2/include/sigc++-2.0 -I/opt/gnome2/lib64/sigc++-2.0/include -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -DENABLE_NLS=1 -DDATADIR=\"/opt/gnome2/share\" -DSYSTEM_LIBDIR=\"/usr/lib\" -DNEMIVER_INSTALL_PREFIX=\"/opt/gnome2\" -DNEMIVER_SYSTEM_CONFIG_DIR=\"/opt/gnome2/lib64/nemiver/config\" -DNEMIVER_MODULES_DIR=\"/opt/gnome2/lib64/nemiver/modules\" -DNEMIVER_PLUGINS_DIR=\"/opt/gnome2/lib64/nemiver/plugins\" -DNEMIVER_VERSION=\"0.6.4\" -DGDB_PROG=\"/usr/bin/gdb\" -g3 -pipe -O2 -fuse-cxa-atexit -MT nmv-date-utils.lo -MD -MP -MF .deps/nmv-date-utils.Tpo -c nmv-date-utils.cc  -fPIC -DPIC -o .libs/nmv-date-utils.o
 g++ -DHAVE_CONFIG_H -I. -I../.. -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/opt/gnome2/include/libxml2 -I/opt/gnome2/include/libgtop-2.0 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/opt/gnome2/include/glibmm-2.4 -I/opt/gnome2/lib64/glibmm-2.4/include -I/opt/gnome2/include/sigc++-2.0 -I/opt/gnome2/lib64/sigc++-2.0/include -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -DENABLE_NLS=1 -DDATADIR=\"/opt/gnome2/share\" -DSYSTEM_LIBDIR=\"/usr/lib\" -DNEMIVER_INSTALL_PREFIX=\"/opt/gnome2\" -DNEMIVER_SYSTEM_CONFIG_DIR=\"/opt/gnome2/lib64/nemiver/config\" -DNEMIVER_MODULES_DIR=\"/opt/gnome2/lib64/nemiver/modules\" -DNEMIVER_PLUGINS_DIR=\"/opt/gnome2/lib64/nemiver/plugins\" -DNEMIVER_VERSION=\"0.6.4\" -DGDB_PROG=\"/usr/bin/gdb\" -g3 -pipe -O2 -fuse-cxa-atexit -MT nmv-env.lo -MD -MP -MF .deps/nmv-env.Tpo -c nmv-env.cc  -fPIC -DPIC -o .libs/nmv-env.o



And I think linking looks like this:
/bin/sh ../../../libtool --tag=CXX   --mode=link g++  -g3 -pipe -O2 -fuse-cxa-atexit  -module -avoid-version -Wl,--as-needed -L/opt/gnome2/lib64 -Wl,-O0 -Wl,--enable-new-dtags -Wl,--sort-common -Wl,--as-needed -o libdbgperspectiveplugin.la -rpath /opt/gnome2/lib64/nemiver/plugins/dbgperspective nmv-dialog.lo nmv-run-program-dialog.lo nmv-locate-file-dialog.lo nmv-load-core-dialog.lo nmv-saved-sessions-dialog.lo nmv-preferences-dialog.lo nmv-proc-list-dialog.lo nmv-var-inspector-dialog.lo nmv-find-text-dialog.lo nmv-sess-mgr.lo nmv-call-stack.lo nmv-variables-utils.lo nmv-local-vars-inspector.lo nmv-global-vars-inspector-dialog.lo nmv-var-inspector.lo nmv-breakpoints-view.lo nmv-registers-view.lo nmv-thread-list.lo nmv-file-list.lo nmv-open-file-dialog.lo nmv-set-breakpoint-dialog.lo nmv-choose-overloads-dialog.lo nmv-remote-target-dialog.lo nmv-dbg-perspective.lo nmv-vars-treeview.lo nmv-call-function-dialog.lo nmv-memory-view.lo -Wl,--export-dynamic -L/opt/gnome2/lib64 -lgmodule-2.0 -lglib-2.0   -pthread -L/opt/gnome2/lib64 -lgthread-2.0 -lrt -lglib-2.0   -L/opt/gnome2/lib64 -lxml2   -Wl,--export-dynamic -L/opt/gnome2/lib64 -lgmodule-2.0 -lglib-2.0   -L/opt/gnome2/lib64 -lglibmm-2.4 -lgobject-2.0 -lsigc-2.0 -lglib-2.0   -L/opt/gnome2/lib64 -lgtop-2.0 -lglib-2.0    -L/opt/gnome2/lib64 -lgtkmm-2.4 -lgiomm-2.4 -lgdkmm-2.4 -latkmm-1.6 -lgtk-x11-2.0 -lpangomm-1.4 -lcairomm-1.0 -lglibmm-2.4 -lsigc-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0   -L/opt/gnome2/lib64 -lglademm-2.4 -lgtkmm-2.4 -lglade-2.0 -lgiomm-2.4 -lgdkmm-2.4 -latkmm-1.6 -lpangomm-1.4 -lcairomm-1.0 -lglibmm-2.4 -lsigc-2.0 -lgtk-x11-2.0 -lxml2 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0   -L/opt/gnome2/lib64 -lvte -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0   -L/opt/gnome2/lib64 -lgtksourceviewmm-2.0 -lgtksourceview-2.0 -lgtkmm-2.4 -lgiomm-2.4 -lgdkmm-2.4 -latkmm-1.6 -lgtk-x11-2.0 -lpangomm-1.4 -lcairomm-1.0 -lglibmm-2.4 -lsigc-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0   -L/opt/gnome2/lib64 -lgtkhex -lgailutil -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0   -L/opt/gnome2/lib64 -lglademm-2.4 -lgtkmm-2.4 -lglade-2.0 -lgiomm-2.4 -lgdkmm-2.4 -latkmm-1.6 -lpangomm-1.4 -lcairomm-1.0 -lglibmm-2.4 -lsigc-2.0 -lgtk-x11-2.0 -lxml2 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0   -L/opt/gnome2/lib64 -lvte -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0   -L/opt/gnome2/lib64 -lgiomm-2.4 -lgio-2.0 -lglibmm-2.4 -lgmodule-2.0 -lgobject-2.0 -lsigc-2.0 -lglib-2.0 ../../../src/common/libnemivercommon.la ../../../src/uicommon/libnemiveruicommon.la 
Comment 3 Tobias Mueller 2009-02-14 14:59:29 UTC
Created attachment 128721 [details]
nemiver build log

Note, that it doesn't crash (anymore?) if I run it without GDB...
Comment 4 Dodji Seketeli 2009-02-15 22:42:17 UTC
I tracked this down, and it looks like I might have something. I think it's a bug in ghex. I submitted a patch to it. See #571892.
Comment 5 Dodji Seketeli 2009-02-16 13:52:48 UTC
Tobias,

Until ghex gets released with a fix (possibly the fix I proposed) you can work around the problem by configure nemiver with: ./configure --disable-memoryview.

This way, the code that instantiates the GtkHex widget won't get called and you shouldn't have the crash.

We really need to push out a point release of ghex with the fix so that distros can update it. Normally, clients of ghex shouldn't need to be recompiled to be fixed wrt problem.

I hope this helps.
Comment 6 Tobias Mueller 2009-02-16 21:18:14 UTC
The patch from attachment 128800 [details] [review] in bug 571892 works like charm for me! Thanks for the fix!
Comment 7 Jonathon Jongsma 2009-02-19 05:31:53 UTC
I've released a new version of ghex, so hopefully that will get picked up by distros soon.
Comment 8 Tobias Mueller 2009-02-22 12:58:59 UTC
k, I'm closing as a dup of bug 571892.

*** This bug has been marked as a duplicate of 571892 ***