Re: Link problems with Xdmx, may be Darwin-only(?)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 11 Apr 2007, SciFi wrote:

5.  Link problems with Xdmx, may be Darwin-only(?)

Build Log snip:


[...]  -Wall -UNEED_SCREEN_REGIONS     -L../../exports/lib    	hw/dmx/dix/main.o hw/dmx/miinitext.o                      GL/mesa/main/dispatch.o   	hw/dmx/dix/libdix.a hw/dmx/os/libos.a hw/dmx/libdmxlib.a hw/dmx/config/libdmxconfig.a 		     hw/dmx/glxProxy/libglxProxy.a 		     miext/shadow/libshadow.a fb/libfb.a mi/libmi.a hw/dmx/Xext/libext.a record/librecord.a XTrap/libxtrap.a xkb/libxkb.a Xi/libxinput.a lbx/liblbx.a 		     ../../lib/lbxutil/liblbxutil.a  render/librender.a hw/dmx/input/libdmxinput.a -L/usr/X11R6/lib     	-L../../exports/lib  -lXfont -L/usr/local/lib -lfreetype ../../lib/font/stubs/libfntstubs.a -L../../exports/lib   -lXi -lXmu -lXt -lSM -lICE -lXext -lX11 		     -lXrender -lXext -lX11 -lz    		     -lXdmcp
/usr/bin/ld: Undefined symbols:
_DarwinGlxExtensionInit
_DarwinGlxWrapInitVisuals
__glapi_Dispatch
[...]
<<<<

To recreate:

Enable the Xdmx options in your [build/]config/cf/host.def file,
e.g.
#define XdmxServer		YES

You also have XFree86Devel set to YES.

Build with latest XCode (Apple-provided gcc, ld, etc.).

Possibly related env-vars:
export MACOSX_DEPLOYMENT_TARGET="10.4"
export SDKROOT="/Developer/SDKs/MacOSX10.4u.sdk"
export SDK="${SDKROOT}"
...and maybe others...

$ gcc --version
powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5367)
[...]

$ uname -a
Darwin <hostname> 8.9.0 Darwin Kernel Version 8.9.0: Thu Feb 22 20:54:07 PST 2007; root:xnu-792.17.14~1/RELEASE_PPC Power Macintosh powerpc PowerMac7,3 Darwin

(OSX 10.4.9 running on a Dual G5 2.7GHz with 3.5GB of matched-pair
SDRAM and more...)

Discussion:

Some libs aren't being included at all during the link phase for
Xdmx.

I _think_ this is how it might be fixed:

-cut->>>>
--- xc/programs/Xserver/Imakefile_orig	2007-04-10 20:58:18 -0500
+++ xc/programs/Xserver/Imakefile	2007-04-11 01:57:39 -0500
@@ -1454,7 +1454,7 @@
	$(XDMXDIRS), \
	$(XDMXOBJS) $(XDMXDEFFILE), \
	$(XDMXLIBS), \
-	$(XDMXSYSLIBS))
+	$(XDMXSYSLIBS) $(IOKITLIB) GL/mesa/GLcore/libGLcore.a -Wl,-m)
#endif /* XdmxServer */


<<<<-cut-<<<<

No.  Xdmx has its own GLX implementation.

The patch below should fix this:

*** cvs/xc/programs/Xserver/Imakefile	Mon Apr  9 09:19:10 2007
--- devel/xc/programs/Xserver/Imakefile	Sat Apr 14 23:00:06 2007
*************** XCOMM
*** 1427,1436 ****
  		     $(DMXEXTDIRS) $(SHADOWDIR) $(DEPDIRS)
  #if BuildGlxInDmx
         GLXPROXYLIB = $(XDMXDDXDIR)/glxProxy/LibraryTargetName(glxProxy)
-         XDMXGLOBJS = $(GLOBJS)
  #endif
!           XDMXOBJS = $(XDMXDDXDIR)/dix/main.o $(XDMXDDXDIR)/miinitext.o \
!                      $(XDMXGLOBJS)
           XDMXINPUT = $(XDMXDDXDIR)/input/LibraryTargetName(dmxinput)
          XDMXCONFIG = $(XDMXDDXDIR)/config/LibraryTargetName(dmxconfig)
                XDMX = $(XDMXDDXDIR)/LibraryTargetName(dmxlib) $(XDMXCONFIG) \
--- 1427,1434 ----
  		     $(DMXEXTDIRS) $(SHADOWDIR) $(DEPDIRS)
  #if BuildGlxInDmx
         GLXPROXYLIB = $(XDMXDDXDIR)/glxProxy/LibraryTargetName(glxProxy)
  #endif
!           XDMXOBJS = $(XDMXDDXDIR)/dix/main.o $(XDMXDDXDIR)/miinitext.o
           XDMXINPUT = $(XDMXDDXDIR)/input/LibraryTargetName(dmxinput)
          XDMXCONFIG = $(XDMXDDXDIR)/config/LibraryTargetName(dmxconfig)
                XDMX = $(XDMXDDXDIR)/LibraryTargetName(dmxlib) $(XDMXCONFIG) \
*** cvs/xc/programs/Xserver/hw/dmx/glxProxy/glxext.c	Fri Jan 19 08:37:02 2007
--- devel/xc/programs/Xserver/hw/dmx/glxProxy/glxext.c	Sat Apr 14 22:48:48 2007
*************** void __glXNoSuchRenderOpcode(GLbyte *pc)
*** 518,520 ****
--- 518,534 ----
      return;
  }

+ #ifdef __DARWIN__
+ void
+ DarwinGlxExtensionInit(INITARGS)
+ {
+     GlxExtensionInit();
+ }
+
+ void
+ DarwinGlxWrapInitVisuals(
+     void *procPtr)
+ {
+     GlxWrapInitVisuals(procPtr);
+ }
+ #endif

Marc.

+----------------------------------+----------------------------------+
|  Marc Aurele La France           |  work:   1-780-492-9310          |
|  Academic Information and        |  fax:    1-780-492-1729          |
|    Communications Technologies   |  email:  tsi@xxxxxxxxxxx         |
|  352 General Services Building   +----------------------------------+
|  University of Alberta           |                                  |
|  Edmonton, Alberta               |    Standard disclaimers apply    |
|  T6G 2H1                         |                                  |
|  CANADA                          |                                  |
+----------------------------------+----------------------------------+
XFree86 developer and VP.  ATI driver and X server internals.
_______________________________________________
Devel mailing list
Devel@xxxxxxxxxxx
http://XFree86.Org/mailman/listinfo/devel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [X Forum]     [XFree86]     [XFree86 Newbie]     [X.Org]     [IETF Annouce]     [Security]     [Fontconfig]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]

  Powered by Linux