I'm a bit puzzled about the behaviour of lablgtk on debian/unstable, I'm
using the latest 1.x lablgtk version (1.2.5-6+20021031).
Even the simplest /usr/share/doc/liblablgtk-ocaml-dev/examples/hello.ml
doesn't work (I've removed some blank lines from the a.out output
between various Gtk/Glib messages to trim down this mail):
zack@lordsoth:/tmp$ ocamlfind ocamlc -package lablgtk -linkpkg hello.ml
File "hello.ml", line 10, characters 2-98:
Warning: this expression should have type unit.
File "hello.ml", line 12, characters 2-44:
Warning: this expression should have type unit.
File "hello.ml", line 13, characters 2-74:
Warning: this expression should have type unit.
File "hello.ml", line 14, characters 2-49:
Warning: this expression should have type unit.
zack@lordsoth:/tmp$ ./a.out
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 152 (g_hash_table_insert): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 152 (g_hash_table_insert): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 152 (g_hash_table_insert): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtktypeutils.c: line 337 (gtk_type_class): assertion `node != NULL' failed.
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkContainer::border_width" is not in the `(null)' ancestry
Gtk-CRITICAL **: file gtkobject.c: line 939 (gtk_object_add_arg_type): assertion `arg_type > GTK_TYPE_NONE' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkobject.c: line 939 (gtk_object_add_arg_type): assertion `arg_type > GTK_TYPE_NONE' failed.
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkContainer::reallocate_redraws" is not in the `(null)' ancestry
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-CRITICAL **: file gtkobject.c: line 357 (gtk_object_class_add_signals): assertion `GTK_IS_OBJECT_CLASS (class)' failed.
Gtk-CRITICAL **: file gtkobject.c: line 939 (gtk_object_add_arg_type): assertion `arg_type > GTK_TYPE_NONE' failed.
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkWindow::title" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkWindow::auto_shrink" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkWindow::allow_shrink" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkWindow::allow_grow" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkWindow::modal" is not in the `(null)' ancestry
Gtk-CRITICAL **: file gtkobject.c: line 939 (gtk_object_add_arg_type): assertion `arg_type > GTK_TYPE_NONE' failed.
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkWindow::default_width" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkWindow::default_height" is not in the `(null)' ancestry
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-CRITICAL **: file gtkobject.c: line 357 (gtk_object_class_add_signals): assertion `GTK_IS_OBJECT_CLASS (class)' failed.
Gtk-WARNING **: invalid cast from `GtkBin' to `(unknown)'
Gtk-WARNING **: invalid cast from `GtkWindow' to `(unknown)'
Gtk-WARNING **: invalid cast from `GtkWindow' to `(unknown)'
Gtk-WARNING **: invalid cast from `GtkWindow' to `(unknown)'
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkwidget.c: line 2285 (gtk_widget_queue_resize): assertion `GTK_IS_WIDGET (widget)' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkwidget.c: line 4871 (gtk_widget_ref): assertion `GTK_IS_WIDGET (widget)' failed.
Gtk-WARNING **: invalid cast from `GtkWindow' to `(unknown)'
Gtk-CRITICAL **: file gtkobject.c: line 457 (gtk_object_sink): assertion `GTK_IS_OBJECT (object)' failed.
Gtk-CRITICAL **: file gtkobject.c: line 1162 (gtk_object_ref): assertion `GTK_IS_OBJECT (object)' failed.
Gtk-WARNING **: invalid cast from `GtkWindow' to `(unknown)'
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 152 (g_hash_table_insert): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkButton::label" is not in the `(null)' ancestry
Gtk-CRITICAL **: file gtkobject.c: line 939 (gtk_object_add_arg_type): assertion `arg_type > GTK_TYPE_NONE' failed.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-CRITICAL **: file gtkobject.c: line 357 (gtk_object_class_add_signals): assertion `GTK_IS_OBJECT_CLASS (class)' failed.
Gtk-WARNING **: invalid cast from `GtkBin' to `(unknown)'
Gtk-WARNING **: invalid cast from `GtkButton' to `(unknown)'
Gtk-WARNING **: invalid cast from `GtkButton' to `(unknown)'
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 152 (g_hash_table_insert): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
GLib-CRITICAL **: file ghash.c: line 152 (g_hash_table_insert): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkMisc::xalign" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkMisc::yalign" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkMisc::xpad" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkMisc::ypad" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkLabel::label" is not in the `(null)' ancestry
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkLabel::pattern" is not in the `(null)' ancestry
Gtk-CRITICAL **: file gtkobject.c: line 939 (gtk_object_add_arg_type): assertion `arg_type > GTK_TYPE_NONE' failed.
Gtk-WARNING **: gtk_arg_type_new(): argument class in "GtkLabel::wrap" is not in the `(null)' ancestry
Gtk-WARNING **: invalid cast from `GtkLabel' to `(unknown)'
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkwidget.c: line 2285 (gtk_widget_queue_resize): assertion `GTK_IS_WIDGET (widget)' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkwidget.c: line 2285 (gtk_widget_queue_resize): assertion `GTK_IS_WIDGET (widget)' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkcontainer.c: line 714 (gtk_container_add): assertion `GTK_IS_WIDGET (widget)' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkwidget.c: line 1428 (gtk_widget_show): assertion `GTK_IS_WIDGET (widget)' failed.
Gtk-CRITICAL **: file gtkobject.c: line 1162 (gtk_object_ref): assertion `GTK_IS_OBJECT (object)' failed.
Gtk-CRITICAL **: file gtkobject.c: line 457 (gtk_object_sink): assertion `GTK_IS_OBJECT (object)' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkcontainer.c: line 714 (gtk_container_add): assertion `GTK_IS_WIDGET (widget)' failed.
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkwidget.c: line 1428 (gtk_widget_show): assertion `GTK_IS_WIDGET (widget)' failed.
Gtk-WARNING **: invalid cast from `GtkWindow' to `(unknown)'
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-WARNING **: invalid cast from `GtkWindow' to `(unknown)'
Gtk-WARNING **: gtk_signal_connect_full(): could not find signal "delete_event" in the `GtkWindow' class ancestry
Gtk-WARNING **: invalid cast from `GtkWindow' to `(unknown)'
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-WARNING **: invalid cast from `GtkWindow' to `(unknown)'
Gtk-WARNING **: gtk_signal_connect_full(): could not find signal "destroy" in the `GtkWindow' class ancestry
Gtk-WARNING **: invalid cast from `GtkButton' to `(unknown)'
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-WARNING **: invalid cast from `GtkButton' to `(unknown)'
Gtk-WARNING **: gtk_signal_connect_full(): could not find signal "clicked" in the `GtkButton' class ancestry
Gtk-WARNING **: invalid cast from `GtkButton' to `(unknown)'
Gtk-CRITICAL **: file gtksignal.c: line 433 (gtk_signal_lookup): assertion `gtk_type_is_a (object_type, GTK_TYPE_OBJECT)' failed.
Gtk-WARNING **: invalid cast from `GtkButton' to `(unknown)'
Gtk-WARNING **: gtk_signal_connect_full(): could not find signal "clicked" in the `GtkButton' class ancestry
GLib-CRITICAL **: file ghash.c: line 138 (g_hash_table_lookup): assertion `hash_table != NULL' failed.
Gtk-WARNING **: gtk_type_create(): unknown parent type `21'.
Gtk-CRITICAL **: file gtkwidget.c: line 1428 (gtk_widget_show): assertion `GTK_IS_WIDGET (widget)' failed.
and then the a.out executable hangs waiting forever.
Compiling a.out with ocamlopt produces the same result.
I've tried with older version of lablgtk until 1.2.5-3 and the behaviour
is the same.
libgtk1.2 version is 1.2.10-14.
I'm able to reproduce the same behaviour on at least 3 debian/unstable
and also on some woody boxes with my lablgtk rebuilt packages.
Enjoy!
--
Stefano Zacchiroli - Undergraduate Student of CS @ Uni. Bologna, Italy
zack@{cs.unibo.it,debian.org,bononia.it} - http://www.bononia.it/zack/
" I know you believe you understood what you think I said, but I am not
sure you realize that what you heard is not what I meant! " -- G.Romney
Attachment:
pgp6mzQil4RVk.pgp
Description: PGP signature