#33962 closed defect (fixed)
xchat2: Undefined symbols: "__"
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | afb@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | jeremyhu (Jeremy Huddleston Sequoia) | |
Port: | xchat2 |
Description
Building xchat2 fails for me:
Undefined symbols: "__", referenced from: _dbus_plugin_init in libxchatcommon.a(dbus-plugin.o) _dbus_plugin_init in libxchatcommon.a(dbus-plugin.o) _dbus_plugin_init in libxchatcommon.a(dbus-plugin.o) _dbus_plugin_init in libxchatcommon.a(dbus-plugin.o) (maybe you meant: ___maskrune, ___strcpy_chk , ___stdoutp , ___dso_handle , _dbus_glib_marshal_remote_object_BOOLEAN__STRING_INT_INT_POINTER_POINTER , _dbus_glib_marshal_remote_object_BOOLEAN__UINT_POINTER , _gtk_marshal_VOID__POINTER_POINTER , ___sprintf_chk , ___stack_chk_guard , ___error , _dbus_glib_marshal_remote_object_BOOLEAN__STRING_INT_STRING_INT_POINTER_POINTER , _dbus_glib_marshal_remote_object_BOOLEAN__STRING_POINTER_POINTER , cstring=__ , _dbus_glib_marshal_remote_object_BOOLEAN__STRING_POINTER , _dbus_glib_marshal_remote_object_BOOLEAN__BOXED_INT_UCHAR_UCHAR_POINTER , __exit , __mh_execute_header , _dbus_glib_marshal_remote_object_BOOLEAN__UINT_POINTER_POINTER , ___progname , _g_cclosure_marshal_VOID__VOID , ___strncat_chk , _g_cclosure_marshal_VOID__POINTER , ___memcpy_chk , ___stack_chk_fail , _dbus_glib_marshal_remote_object_BOOLEAN__UINT_STRING_POINTER_POINTER , ___toupper , ___stdinp , ___stderrp , _dbus_glib_marshal_remote_object_BOOLEAN__STRING_STRING_POINTER_POINTER , ___tolower , ___strncpy_chk , ___strcat_chk , _dbus_glib_marshal_remote_object_BOOLEAN__STRING_POINTER_POINTER_POINTER_POINTER , _g_cclosure_user_marshal_VOID__POINTER_POINTER_UINT_UINT , __DefaultRuneLocale , _dbus_glib_marshal_remote_object_VOID__STRING_STRING_STRING_STRING_POINTER , _dbus_glib_marshal_remote_object_BOOLEAN__POINTER_POINTER , _dbus_glib_marshal_remote_object_BOOLEAN__STRING_BOXED_POINTER_POINTER )
Attachments (1)
Change History (5)
Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
comment:1 Changed 13 years ago by afb@…
Version: | 2.0.4 |
---|
comment:3 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | jeremyhu@… added |
---|
How strange. The error message that Jeremy was trying to fix in #33959, and that we've been fixing in many other ports in many other tickets, is:
#error "Only <glib.h> can be included directly."
I guess that error message isn't entirely accurate then: apparently <glib/gi18n.h> can and in some cases should be included directly as well.
comment:4 Changed 13 years ago by afb@…
The error message is real and the patch is needed, just that it's not about everything starting with "glib/*".
The recommended way of using GLib has always been to only include the toplevel headers glib.h, glib-object.h, gio.h. Starting with 2.32, GLib enforces this by generating an error when individual headers are directly included.
Still, there are some exceptions; these headers have to be included separately: gmodule.h, glib-unix.h, glib/gi18n-lib.h or glib/gi18n.h (see the Internationalization section), glib/gprintf.h and glib/gstdio.h (we don't want to pull in all of stdio).
That's because someone patched away the inclusion of <glib/gi18n.h>, which defined the gettext function alias called "_".