Closed Bug 247632 Opened 22 years ago Closed 22 years ago

--enable-xinerama build/run problem

Categories

(Core Graveyard :: GFX: Gtk, defect)

x86
Linux
defect
Not set
blocker

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: zlatko, Assigned: blizzard)

Details

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040124 Galeon/1.3.15 Build Identifier: http://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla1.7/src/mozilla-source-1.7.tar.bz2 Trying to compile Mozilla-1.7 on Slackware 8.1, XFree86-4.2.1, gcc-2.95.3, gtk+-2.4.3 (self-compiled). The build stage of a Xinerama-enabled build does report undefined references to Xinerama, but the build does still complete fine (or at least it seems so): [...] rm -f libgfx_gtk.so c++ -I/usr/X11R6/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Wcast-align -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-long-long -pthread -pipe -DNDEBUG -DTRIMMED -ffunction-sections -O3 -DXTHREADS -I/usr/local/include/gtk-2.0 -I/usr/local/lib/gtk-2.0/include -I/usr/local/include -I/usr/X11R6/include -I/usr/local/include/atk-1.0 -I/usr/local/include/pango-1.0 -I/usr/local/include/freetype2 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -fPIC -shared -Wl,-h -Wl,libgfx_gtk.so -o libgfx_gtk.so nsPrintdGTK.o gtk2drawing.o nsDeviceContextGTK.o nsDeviceContextSpecFactoryG.o nsDeviceContextSpecG.o nsDrawingSurfaceGTK.o nsGfxFactoryGTK.o nsGraphicsStateGTK.o nsImageGTK.o nsGCCache.o nsRenderingContextGTK.o nsScreenGtk.o nsScreenManagerGtk.o nsPrintOptionsGTK.o nsFontMetricsUtils.o nsAntiAliasedGlyph.o nsFontFreeType.o nsFT2FontNode.o nsFT2FontCatalog.o nsX11AlphaBlend.o nsXFontAAScaledBitmap.o nsXFontNormal.o nsFontMetricsGTK.o nsGdkUtils.o nsFontMetricsXft.o nsRegionGTK2.o nsNativeThemeGTK.o -Wl,--whole-archive ../../../dist/lib/libgfxft2_s.a -Wl,--no-whole-archive -Wl,--version-script -Wl,../../../build/unix/gnu-ld-scripts/components-version-script -Wl,-Bsymbolic -lXinerama -L../../../dist/bin -lxpcom -L../../../dist/bin -L/home/zlatko/usrlocal/src/mozilla/dist/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl -lgkgfx -lgfxshared_s -L../../../dist/bin -lmozjs ../../../dist/lib/libunicharutil_s.a -L/usr/local/lib -L/usr/X11R6/lib -lXft -lfreetype -lz -lXrender -lX11 -lfontconfig -Wl,--export-dynamic -L/usr/local/lib -L/usr/X11R6/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -lXi -lXinerama -lXext -lXft -lfreetype -lz -lfontconfig -lXcursor -lXrender -lX11 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -liconv -lxprintutil -L/usr/X11R6/lib -lXp -lXext -lX11 -ldl -lm nsScreenManagerGtk.o: In function `nsScreenManagerGtk::EnsureInit(void)': nsScreenManagerGtk.o(.nsScreenManagerGtk::text.EnsureInit(void)+0x89): undefined reference to `XineramaIsActive(_XDisplay *)' nsScreenManagerGtk.o(.nsScreenManagerGtk::text.EnsureInit(void)+0xa1): undefined reference to `XineramaQueryScreens(_XDisplay *, int *)' chmod +x libgfx_gtk.so strip libgfx_gtk.so /home/zlatko/usrlocal/src/mozilla/config/nsinstall -R -m 755 libgfx_gtk.so ../../../dist/gre/components ../../../dist/bin/elf-dynstr-gc ../../../dist/gre/components/libgfx_gtk.so Couldn't GC any strings, exiting. /home/zlatko/usrlocal/src/mozilla/config/nsinstall -R -m 755 libgfx_gtk.so ../../../dist/lib/components ../../../dist/bin/elf-dynstr-gc ../../../dist/lib/components/libgfx_gtk.so Couldn't GC any strings, exiting. /home/zlatko/usrlocal/src/mozilla/config/nsinstall -R -m 755 libgfx_gtk.so ../../../dist/bin/components ../../../dist/bin/elf-dynstr-gc ../../../dist/bin/components/libgfx_gtk.so Couldn't GC any strings, exiting. /home/zlatko/usrlocal/src/mozilla/config/nsinstall -R fontEncoding.properties ../../../dist/bin/res/fonts gmake[4]: Leaving directory `/usr/local/src/mozilla/gfx/src/gtk' [...] The resulting executable doesn't start, however: $ mozilla /usr/local/lib/mozilla/mozilla-bin: relocation error: /usr/local/lib/mozilla/components/libgfx_gtk.so: undefined symbol: XineramaIsActive__FP9_XDisplay This seems to be exactly the same problem as http://bugzilla.mozilla.org/show_bug.cgi?id=183894 ... following the link in comment 6 of that bug, I found out that GDK (version 2.4.3, self-compiled) seems to be the culprit (AFAIK, Mozilla doesn't link against SDL and/or XOSD): [zlatko@thomas]:~/usrlocal/src$ grep XineramaIsActive /usr/X11R6/lib/*.so /usr/lib/*.so /usr/local/lib/*.so Binary file /usr/local/lib/libgdk-x11-2.0.so matches Binary file /usr/local/lib/libSDL.so matches Binary file /usr/local/lib/libxosd.so matches [zlatko@thomas]:~/usrlocal/src$ nm --demangle /usr/local/lib/libgdk-x11-2.0.so | grep XineramaIsActive 00050d9c t XineramaIsActive Mozilla 1.6 and previous versions compiled against GTK 2.4.0 or 2.4.1 (don't remember exactly, unfortunately) didn't have this problem. I'm pretty much stumped - is this a Mozilla problem, or is it a GTK problem? How do I solve this? Reproducible: Always Steps to Reproduce: ./configure --enable-xinerama [...] Actual Results: See details - Mozilla doesn't start due to unresolved symbols in lib/mozilla/components/libgfx_gtk.so.
Sounds like build problems on your system. Maybe you've got an old version of the Xinerama lib hanging around?
Status: UNCONFIRMED → RESOLVED
Closed: 22 years ago
Resolution: --- → INVALID
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.