View previous topic :: View next topic |
Author |
Message |
jvburnes
Joined: 22 Apr 2008 Posts: 2
|
Posted: Tue Apr 21, 2009 10:50 am Post subject: Built gtkD but demo displays strange warnings/errors |
|
|
Hi,
I downloaded and compiled the latest gtkd using dsss and ldc. I'm running Ubuntu 8.04 for which I have the latest libraries and includes (gtk 2.12). I built the "TestWindow" demo and ran it. I think it mostly ran properly, but I got a ton of errors and warnings which makes me think that only part of GTK is working. Messages like:
---cut here---
Loaded lib = libatk-1.0.so
Loaded lib = libcairo.so.2
Loaded lib = libgdk-x11-2.0.so
Loaded lib = libgdk_pixbuf-2.0.so
Loaded lib = libglib-2.0.so
Loaded lib = libgmodule-2.0.so
Loaded lib = libgobject-2.0.so
Loaded lib = libgio-2.0.so
Loaded lib = libgthread-2.0.so
Loaded lib = libgtk-x11-2.0.so
Loaded lib = libpango-1.0.so
Loaded lib = libpangocairo-1.0.so
failed (libcairo.so.2) cairo_show_text_glyphs
failed (libcairo.so.2) cairo_toy_font_face_create
failed (libcairo.so.2) cairo_toy_font_face_get_family
failed (libcairo.so.2) cairo_toy_font_face_get_slant
... lots more symbols
failed (libgdk-x11-2.0.so) gdk_screen_get_monitor_height_mm
failed (libgdk-x11-2.0.so) gdk_screen_get_monitor_width_mm
failed (libgdk-x11-2.0.so) gdk_screen_get_monitor_plug_name
lots more symbols...
failed (libglib-2.0.so) g_atomic_int_inc
failed (libglib-2.0.so) g_atomic_int_dec_and_test
failed (libglib-2.0.so) g_poll
lots more symbols...
g_win32_get_package_installation_directory_of_module
failed (libglib-2.0.so) g_win32_get_package_installation_subdirectory
failed (libglib-2.0.so) g_win32_get_windows_version
failed (libglib-2.0.so) g_win32_locale_filename_from_utf8
failed (libgobject-2.0.so) g_signal_new_class_handler
failed (libgobject-2.0.so) g_signal_override_class_handler
failed (libgobject-2.0.so) g_signal_chain_from_overridden_handler
failed (libgio-2.0.so) g_file_query_file_type
failed (libgio-2.0.so) g_file_make_directory_with_parents
lots more symbols...
failed (libgthread-2.0.so) g_mutex_new
failed (libgthread-2.0.so) g_mutex_lock
failed (libgthread-2.0.so) g_mutex_trylock
lots more symbols...
failed (libgtk-x11-2.0.so) gtk_accel_group_get_is_locked
failed (libgtk-x11-2.0.so) gtk_accel_group_get_modifier_mask
failed (libgtk-x11-2.0.so) gtk_clipboard_request_uris
lots more symbols....
failed (libpango-1.0.so) pango_bidi_type_for_unichar
failed (libpango-1.0.so) pango_glyph_item_iter_copy
failed (libpango-1.0.so) pango_glyph_item_iter_free
lots more symbols...
(TestWindow:8330): Gtk-CRITICAL **: gtk_image_get_pixbuf: assertion `image->storage_type == GTK_IMAGE_PIXBUF || image->storage_type == GTK_IMAGE_EMPTY' failed
Failed to load image gtkDlogo_a_small.png
(TestWindow:8330): Gtk-CRITICAL **: gtk_image_get_pixbuf: assertion `image->storage_type == GTK_IMAGE_PIXBUF || image->storage_type == GTK_IMAGE_EMPTY' failed
Failed to load image gtkDlogo_a_small.png
---cut here----
So there you have it.
Any ideas? Is the latest gtkD compatible with 2.12? If that's the case then I can either compile against new gtk sources in /usr/local or downgrade to a version compatible with my system. I would be nice to know which version of gtk is required for each release.
Help!
Thanks,
jb
jvburnes@gmail.com |
|
Back to top |
|
|
Mike Wey
Joined: 07 May 2007 Posts: 428
|
Posted: Tue Apr 21, 2009 3:16 pm Post subject: |
|
|
GtkD works with gtk 2.12, as long as you don't use functions added in newer versions of gtk. When using a older version of gtk some functions will fail to load, as shown by the output from the TestWindow Demo.
This information is also not outputted by default, the TestWindowDemo calls gtkc.Loader.Linker.dumpLoadLibraries();
and gtkc.Loader.Linker.dumpFailedLoads(); witch return this info.
Quote: | I can either compile against new gtk sources in /usr/local or downgrade to a version compatible with my system. |
You won't have to recompile GtkD to use a different version of gtk, all the symbols are loaded dynamically when a GtkD application is started.
Quote: | I would be nice to know which version of gtk is required for each release. | I don't know how far back you can go. i've used one of the newer versions on gtk 2.10 once though.
Last edited by Mike Wey on Wed Apr 22, 2009 2:06 pm; edited 1 time in total |
|
Back to top |
|
|
okibi
Joined: 04 Jan 2007 Posts: 170
|
Posted: Tue Apr 21, 2009 5:35 pm Post subject: |
|
|
Like Mike said, it's due to you using an older version of GTK+.
Keep in mind that there are officially supported Windows installers for GTK+ on the wiki page. Your best bet is to match the version that is listed.
GtkD 1.0 - GTK+ 2.12.11
GtkD 1.1 - GTK+ 2.14.7
GtkD 1.2 - GTK+ 2.16.0
Every version is tested to compile back to GTK+ 2.8.x, but will not work further back. However, as mentioned, you will have some errors if you use new functions with an older version of GTK+. This goes for Linux, Windows, and Mac. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|