Closed Bug 778291 Opened 13 years ago Closed 7 years ago

Link error on Ubuntu 10.04: "b2g/b2g_built26/libxul.so: undefined symbol: gdk_visual_get_depth"

Categories

(Core :: Widget: Gtk, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: cjones, Unassigned)

References

Details

Is the gtk version in ubuntu 10.04 officially unsupported, or do we need to add a dynamic version check for this symbol?
When building against GTK+ 2.20, gdk_visual_get_depth should be provided by http://hg.mozilla.org/mozilla-central/annotate/08428deb1e89/widget/gtk2/gtk2compat.h#l159 Perhaps gtk2compat.h is not included (and can be)?
Is there any update on this bug? Also, at the duplicate bug 785475 I describe a workaround that allow me to run the b2g desktop build.
Is libxul being built against GDK headers that correspond to the installed libraries?
(In reply to Karl Tomlinson (:karlt) from comment #4) > Is libxul being built against GDK headers that correspond to the installed > libraries? I don't know. How can I check this? Is there something that I can do and give you useful feedback?
Is gdk_visual_get_depth declared in /usr/include/gtk-2.0/gdk/gdkvisual.h? What does 'grep "define GTK_.*_VERSION" /usr/include/gtk-2.0/gtk/gtkversion.h' report? Use ldd /path/to/libxul.so | grep libgdk-x11-2.0.so.0 to find the path to the library being used and then readelf -sDW /usr/libPATH/TO/libgdk-x11-2.0.so.0 | grep gdk_visual_get_depth to confirm that the symbol is not there.
(In reply to Karl Tomlinson (:karlt) from comment #6) > Is gdk_visual_get_depth declared in /usr/include/gtk-2.0/gdk/gdkvisual.h? > What does 'grep "define GTK_.*_VERSION" > /usr/include/gtk-2.0/gtk/gtkversion.h' report? > grep "define GTK_.*_VERSION" /usr/include/gtk-2.0/gtk/gtkversion.h #define GTK_MAJOR_VERSION (2) #define GTK_MINOR_VERSION (24) #define GTK_MICRO_VERSION (10) > Use ldd /path/to/libxul.so | grep libgdk-x11-2.0.so.0 to find the path to > the library being used ./libxul.so: /usr/lib32/libssl3.so: version `NSS_3.13.2' not found (required by ./libxul.so) ./libxul.so: /usr/lib32/libssl3.so: version `NSS_3.13' not found (required by ./libxul.so) ./libxul.so: /usr/lib32/libnssutil3.so: version `NSSUTIL_3.13' not found (required by ./libxul.so) ./libxul.so: /usr/lib32/libsmime3.so: version `NSS_3.13' not found (required by ./libxul.so) ./libxul.so: /usr/lib32/libnss3.so: version `NSS_3.12.10' not found (required by ./libxul.so) ./libxul.so: /usr/lib32/libnss3.so: version `NSS_3.13' not found (required by ./libxul.so) ./libxul.so: /usr/lib32/libnss3.so: version `NSS_3.12.9' not found (required by ./libxul.so) libgdk-x11-2.0.so.0 => /usr/lib32/libgdk-x11-2.0.so.0 (0xf4c62000) > and then > readelf -sDW /usr/libPATH/TO/libgdk-x11-2.0.so.0 | grep gdk_visual_get_depth > to confirm that the symbol is not there. I confirm that the symbol isn't there. -------------------------- I don't know if it is relative and if it helps but running ldd-grep on libxul.so of the 32bit nightly firefox point to the same lib with the same not found errors. However when I replace the b2g libxul.so with the 32bit firefox libxul.so and run again b2g then works fine.
(In reply to Alfredos-Panagiotis Damkalis (irc: fredy) from comment #7) Thanks. That demonstrates that /usr/include/gtk-2.0/gtk/gtkversion.h is not consistent with /usr/lib32/libgdk-x11-2.0.so.0. If you want to build something to run against that libgdk-x11-2.0.so.0 then the headers need to be the same version of GTK as used for the library. (Is there a 64-bit libgdk-x11-2.0.so.0 that /usr/include/gtk-2.0/gtk/gtkversion.h may correspond to perhaps? If so, then I wonder why b2g with building 32-bit objects.)
Mass closing as we are no longer working on b2g/firefox os.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
Mass closing as we are no longer working on b2g/firefox os.
You need to log in before you can comment on or make changes to this bug.