https://bugzilla.novell.com/show_bug.cgi?id=378199 Summary: ld bugs: undefined symbols Product: openSUSE 11.0 Version: Alpha 3 Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: Development AssignedTo: pth@novell.com ReportedBy: hfiguiere@novell.com QAContact: qa@suse.de Found By: --- I have found a very strange behaviour of the linker that I attribute to the linker. The same source tree with the same configuration builds perfectly fine with 10.3 and fail to link with openSUSE 11. To reproduce: Download firefox 3.0b5 from here: ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/3.0b5/source/firefox-3.0b5-source.tar.bz2 Untar Apply the attached patch from the mozilla folder. Run $ make -f client.mk build The link error is as follow: c++ -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-long-long -pedantic -fno-strict-aliasing -fshort-wchar -pthread -pipe -DDEBUG -D_DEBUG -DDEBUG_hub -DTRACING -g -fno-inline -Os -freorder-blocks -fno-reorder-functions -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-unix-print-2.0 -fPIC -shared -Wl,-z,defs -Wl,-h,libwidget_gtk2.so -o libwidget_gtk2.so mozcontainer.o mozdrawingarea.o keysym2ucs.o nsPrintdGTK.o maiRedundantObjectFactory.o gtk2drawing.o nsWindow.o nsAppShell.o nsWidgetFactory.o nsToolkit.o nsBidiKeyboard.o nsCommonWidget.o nsLookAndFeel.o nsGtkKeyUtils.o nsClipboard.o nsDragService.o nsFilePicker.o nsSound.o nsNativeKeyBindings.o nsScreenGtk.o nsScreenManagerGtk.o nsDeviceContextSpecG.o nsPrintOptionsGTK.o nsImageToPixbuf.o nsAccessibilityHelper.o nsIdleServiceGTK.o nsPrintDialogGTK.o nsPrintSettingsGTK.o nsApplicationPicker.o nsNativeThemeGTK.o -lpthread -Wl,-rpath-link,../../../dist/bin -Wl,--whole-archive ./xpwidgets/libxpwidgets_s.a -Wl,--no-whole-archive -L../../../dist/bin -lxpcom -lxpcom_core -L../../../dist/bin -L../../../dist/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl -lgkgfx -lgtkxtbin -lX11 -lgtk-x11-2.0 -latk-1.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgmodule-2.0 -ldl -lgobject-2.0 -lglib-2.0 -lthebes -L../../../dist/bin -lmozlcms -Wl,-Bsymbolic -lgfxpsshar -ldl -lm nsPrintdGTK.o: In function `DoPrintGTK': /home/hub/mozilla/widget/src/gtk2/nsPrintdGTK.c:225: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintdGTK.c:232: undefined reference to `gtk_box_get_type' /home/hub/mozilla/widget/src/gtk2/nsPrintdGTK.c:232: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintdGTK.c:283: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintdGTK.c:289: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintdGTK.c:371: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintdGTK.c:374: undefined reference to `gtk_box_pack_start' nsPrintdGTK.o:/home/hub/mozilla/widget/src/gtk2/nsPrintdGTK.c:376: more undefined references to `gtk_box_pack_start' follow gtk2drawing.o: In function `ensure_tree_view_widget': /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:643: undefined reference to `gtk_tree_view_new' gtk2drawing.o: In function `ensure_scrolled_window_widget': /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:706: undefined reference to `gtk_scrolled_window_new' gtk2drawing.o: In function `ensure_tree_header_cell_widget': /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:672: undefined reference to `gtk_tree_view_column_new' /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:674: undefined reference to `gtk_tree_view_get_type' /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:674: undefined reference to `gtk_tree_view_append_column' /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:676: undefined reference to `gtk_tree_view_column_new' /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:678: undefined reference to `gtk_tree_view_append_column' /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:681: undefined reference to `gtk_tree_view_column_new' /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:683: undefined reference to `gtk_tree_view_append_column' gtk2drawing.o: In function `calculate_arrow_rect': /home/hub/mozilla/widget/src/gtk2/gtk2drawing.c:1025: undefined reference to `gtk_misc_get_type' nsFilePicker.o: In function `UpdateFilePreviewWidget': /home/hub/mozilla/widget/src/gtk2/nsFilePicker.cpp:314: undefined reference to `gtk_misc_get_type' nsPrintDialogGTK.o: In function `ShowCustomDialog': /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:96: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:97: undefined reference to `gtk_box_get_type' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:97: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:98: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:100: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:101: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:105: undefined reference to `gtk_box_pack_start' nsPrintDialogGTK.o: In function `nsPrintDialogWidgetGTK': /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:176: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:200: undefined reference to `gtk_label_get_type' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:202: undefined reference to `gtk_misc_get_type' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:202: undefined reference to `gtk_misc_set_alignment' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:209: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:210: undefined reference to `gtk_box_get_type' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:210: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:211: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:212: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:216: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:224: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:225: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:228: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:231: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:232: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:239: undefined reference to `gtk_misc_set_alignment' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:245: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:246: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:247: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:254: undefined reference to `gtk_misc_set_alignment' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:296: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:297: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:298: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:301: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:302: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:303: undefined reference to `gtk_box_pack_start' nsPrintDialogGTK.o:/home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:304: more undefined references to `gtk_box_pack_start' follow nsPrintDialogGTK.o: In function `nsPrintDialogWidgetGTK': /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:176: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:200: undefined reference to `gtk_label_get_type' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:202: undefined reference to `gtk_misc_get_type' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:202: undefined reference to `gtk_misc_set_alignment' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:209: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:210: undefined reference to `gtk_box_get_type' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:210: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:211: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:212: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:216: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:224: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:225: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:228: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:231: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:232: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:239: undefined reference to `gtk_misc_set_alignment' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:245: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:246: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:247: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:254: undefined reference to `gtk_misc_set_alignment' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:296: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:297: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:298: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:301: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:302: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:303: undefined reference to `gtk_box_pack_start' nsPrintDialogGTK.o:/home/hub/mozilla/widget/src/gtk2/nsPrintDialogGTK.cpp:304: more undefined references to `gtk_box_pack_start' follow nsApplicationPicker.o: In function `nsApplicationPicker::MakeApplicationChooser(_GtkWindow*, nsAString_internal const&)': /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:287: undefined reference to `gtk_vbox_new' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:290: undefined reference to `gtk_label_new_with_mnemonic' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:291: undefined reference to `gtk_misc_get_type' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:291: undefined reference to `gtk_misc_set_alignment' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:292: undefined reference to `gtk_box_get_type' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:292: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:294: undefined reference to `gtk_scrolled_window_new' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:297: undefined reference to `gtk_scrolled_window_get_type' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:297: undefined reference to `gtk_scrolled_window_set_shadow_type' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:300: undefined reference to `gtk_scrolled_window_set_policy' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:301: undefined reference to `gtk_box_pack_start' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:303: undefined reference to `gtk_tree_view_new' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:305: undefined reference to `gtk_label_get_type' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:305: undefined reference to `gtk_label_set_mnemonic_widget' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:308: undefined reference to `gtk_tree_view_get_type' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:308: undefined reference to `gtk_tree_view_set_headers_visible' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:313: undefined reference to `gtk_tree_model_get_type' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:313: undefined reference to `gtk_tree_view_set_model' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:314: undefined reference to `gtk_tree_view_column_new' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:316: undefined reference to `gtk_cell_renderer_pixbuf_new' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:317: undefined reference to `gtk_tree_view_column_pack_start' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:320: undefined reference to `gtk_tree_view_column_set_attributes' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:322: undefined reference to `gtk_cell_renderer_text_new' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:323: undefined reference to `gtk_tree_view_column_pack_start' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:326: undefined reference to `gtk_tree_view_column_set_attributes' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:329: undefined reference to `gtk_tree_view_append_column' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:331: undefined reference to `gtk_tree_view_get_selection' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:332: undefined reference to `gtk_tree_selection_set_mode' nsApplicationPicker.o: In function `ApplicationChooserDialog::add_items(ApplicationChooserDialog*)': /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:161: undefined reference to `gnome_vfs_get_mime_type_for_name' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:163: undefined reference to `gnome_vfs_mime_get_all_applications' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:169: undefined reference to `gnome_vfs_mime_application_get_name' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:170: undefined reference to `gnome_vfs_mime_application_get_binary_name' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:171: undefined reference to `gnome_vfs_mime_application_get_icon' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:182: undefined reference to `gtk_icon_theme_get_default' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:182: undefined reference to `gtk_icon_theme_load_icon' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:211: undefined reference to `gnome_vfs_mime_application_list_free' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:189: undefined reference to `gtk_icon_theme_get_default' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:189: undefined reference to `gtk_icon_theme_load_icon' nsApplicationPicker.o: In function `ApplicationChooserDialog::app_list_selection_changed(_GtkTreeSelection*, ApplicationChooserDialog*)': /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:147: undefined reference to `gtk_tree_selection_get_selected' /home/hub/mozilla/widget/src/gtk2/nsApplicationPicker.cpp:152: undefined reference to `gtk_tree_model_get' /usr/lib/gcc/i586-suse-linux/4.3/../../../../i586-suse-linux/bin/ld: libwidget_gtk2.so: hidden symbol `gtk_tree_view_new' isn't defined /usr/lib/gcc/i586-suse-linux/4.3/../../../../i586-suse-linux/bin/ld: final link failed: Nonrepresentable section on output collect2: ld returned 1 exit status gmake[5]: *** [libwidget_gtk2.so] Error 1 gmake[5]: Leaving directory `/home/hub/mozilla/obj-i686-pc-linux-gnu/widget/src/gtk2' gmake[4]: *** [libs] Error 2 gmake[4]: Leaving directory `/home/hub/mozilla/obj-i686-pc-linux-gnu/widget/src' gmake[3]: *** [libs] Error 2 gmake[3]: Leaving directory `/home/hub/mozilla/obj-i686-pc-linux-gnu/widget' gmake[2]: *** [libs_tier_gecko] Error 2 gmake[2]: Leaving directory `/home/hub/mozilla/obj-i686-pc-linux-gnu' gmake[1]: *** [tier_gecko] Error 2 gmake[1]: Leaving directory `/home/hub/mozilla/obj-i686-pc-linux-gnu' make: *** [default] Error 2 If I don't compile nsApplicationPicker.cpp it links. I also did cut & paste the link line that succeeded in 10.3 im my openSUSE 11 and it also fails the same way. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.