Add gmodule-2.0 to build/run requirements
Submitted by an unknown user
Link to original bug (#716716)
Description
---- Reported by shotwell-maint@gnome.bugs 2010-10-25 03:32:00 -0700 ----
Original Redmine bug id: 2726
Original URL: http://redmine.yorba.org/issues/2726
Searchable id: yorba-bug-2726
Original author: Landry Breuil
Original description:
Using shotwell 0.7.2 on OpenBSD-current, built with vala 0.10.0/gtk 2.22.0.
Right-clicking on a pic + selecting add tag/modify tags does nothing, no message on console.
edit->preferences spits the following on console:
(shotwell:5315): Gtk-%(=caps)CRITICAL% **: IA+gtk_widget_set_parent_window: assertion @GTK_IS_WIDGET (widget)' failed
(shotwell:5315): Gtk-%(=caps)CRITICAL% **: IA__gtk_window_set_transient_for: assertion @GTK_IS_WINDOW (window)' failed
(shotwell:5315): GLib-GObject-%(=caps)WARNING% **: invalid (NULL) pointer instance
(shotwell:5315): GLib-GObject-%(=caps)CRITICAL% **: g_signal_connect_data: assertion @G_TYPE_CHECK_INSTANCE (instance)' failed
(shotwell:5315): GLib-GObject-%(=caps)WARNING% **: invalid (NULL) pointer instance
(shotwell:5315): GLib-GObject-%(=caps)CRITICAL% **: g_signal_connect_data: assertion @G_TYPE_CHECK_INSTANCE (instance)' failed
I've managed to track it down to src/Dialogs.vala. AppWindow.createBuilder() returns a Gtk.Builder without objects, although the .glade file is here at the right place.
Vala autogenerated code can be hardly debugged, it confuses gdb a lot.
That's a blocker for having a working port of shotwell 0.7.x for OpenBSD.. in 0.6.x days those features worked fine.
---- Additional Comments From shotwell-maint@gnome.bugs 2013-05-01 11:40:00 -0700 ----
History
Comment 1
Updated by Jim Nelson about 3 years ago
This looks to be a problem with Glade, which we started using more extensively in 0.7.
Are you running Shotwell from the build directory or after it's installed? (If you're doing one, can you try the other and see if it's the same results?)
Thanks,
-- Jim
Comment 2
Updated by Landry Breuil about 3 years ago
I'm running it installed, but same thing when run from build directory.
when installed, layout is:
-rwxr-xr-x 1 root wheel 10494540 Oct 25 13:04 /usr/local/bin/shotwell*
<del>
rw-r--r-</del>
1 root wheel 29844 Oct 25 13:04
/usr/local/share/shotwell/ui/shotwell.glade
Comment 3
Updated by Jim Nelson about 3 years ago
That all looks right. I'm confused as to what the problem could be.
Can you run Shotwell, repro the problem, then close it and attach this file to this ticket:
~/.cache/shotwell/shotwell.log
If Gtk.Builder is having problems with the glade file, it should be logged there.
Comment 4
Updated by Landry Breuil about 3 years ago
Darn. i was adding g_warning calls to debug, and didn't found where it outputted…
L 17406 2010-10-27 15:22:51 [%(=caps)MSG%] main.vala:69: Verifying database …
L 17406 2010-10-27 15:22:52 [%(=caps)WRN%] DirectoryMonitor.vala:784: Unable to retrieve info on /root/Pictures: Error stating file '/root/Pictures': No such file or directory
L 17406 2010-10-27 15:22:58 [%(=caps)WRN%] AppWindow.vala:536: Unable to create Gtk.Builder: Invalid object type @TextEntryDialog'
L 17406 2010-10-27 15:22:58 [%(=caps)WRN%] Dialogs.vala:1376: Unable to create Gtk.Builder: Invalid object type @TextEntryDialog'
That's as if it didn't see that TextEntryDialog was defined in Dialogs.vala.
I've tried moving the TextEntryDialog def to the end of the shotwell.glade file, and then the error is:
L 8971 2010-10-27 15:28:24 [%(=caps)WRN%] AppWindow.vala:536: Unable to create Gtk.Builder: Invalid object type `AlienDatabaseImportDialog'
Comment 5
Updated by Jim Nelson about 3 years ago
Okay, this is weird. What version of GTK are you using?
Comment 6
Updated by Landry Breuil about 3 years ago
gtk+-2.22.0.. maybe we can do a small testcase to exhibit the problem ? Apparently it doesn't like widget definitions which depend on another Gtk base class ? To be honest, i don't know if gtk, glade/gtkbuilder or vala is to blame here.
Comment 7
Updated by Landry Breuil about 3 years ago
Okay, found it, and it was definitely nasty.
http://mail.gnome.org/archives/vala-list/2009-July/msg00125.html
adding gmodule-2.0 to EXT_PKGS in Makefile definitely solves the issue.
Oh, and btw you might want to make udev/gudev support conditional, it only works on Linux.. i had to manually remove it in src/CameraTable.vala (and Makefile) to get shotwell build :)
Comment 8
Updated by Jim Nelson about 3 years ago
- Priority set to High
- Subject changed from preferences/add/modify tag window doesn't work to Add gmodule-2.0 to build/run requirements
Okay … gmodule has reared its head before. I'm going to change this ticket to reflect this.
As far as removing udev, simply taking it out essentially kills camera support (in the sense that we use udev to notify us when a device has been connected to the system). If there's a similar library for FreeBSD, we could consider some way to specify at build time which system to use: #2738 (closed)
A better solution than patching the code is to build with camera support disabled:
./configure --define=NO_CAMERA
However, this doesn't (currently) remove the gudev build/run requirement. That's something else we would need to do: #2737 (closed).
Comment 9
Updated by Jim Nelson 11 months ago
- Target version set to 0.14.0
Comment 10
Updated by Jim Nelson 11 months ago
- Category set to build
Comment 11
Updated by Jim Nelson 11 months ago
- Tracker changed from Bug to Bite-sized
Comment 12
Updated by Joe Bylund 11 months ago
- Description updated (diff)
- Resolution set to fixed
I'm going to take the wikipedia approach and be bold. It appears gmodule-2.0 is already in EXT_PKGS in the Makefile. So this bug looks done, marking as closed.
Comment 13
Updated by Jim Nelson 11 months ago
- Status changed from Open to 5
Good catch!
Comment 14
Updated by Charles Lindsay 7 months ago
- Status changed from 5 to Fixed
--- Bug imported by chaz@yorba.org 2013-11-25 21:47 UTC ---
This bug was previously known as bug 2726 at http://redmine.yorba.org/show_bug.cgi?id=2726
Unknown milestone "unknown in product shotwell. Setting to default milestone for this product, "---". Setting qa contact to the default for this product. This bug either had no qa contact or an invalid one.
Version: 0.14.0
Resolution: RESOLVED FIXED