On Mon, 18 Mar 2002, Guido Guenther wrote:

> when trying to build a static X-Server(#define DoLoadableServer       NO) on 
>Linux/PPC
> the final link of XFree86 fails with

> cfb24/libcfb24.a(cfbglblt8.o): In function `cfbPolyGlyphBlt8Clipped':
> cfbglblt8.o(.text+0x910): undefined reference to `cfb8ComputeClipMasks32'
> cfbglblt8.o(.text+0x910): relocation truncated to fit: R_PPC_REL24 
>cfb8ComputeClipMasks32
> cfb32/libcfb32.a(cfbglblt8.o): In function `cfbPolyGlyphBlt8Clipped':
> cfbglblt8.o(.text+0x690): undefined reference to `cfb8ComputeClipMasks32'
> cfbglblt8.o(.text+0x690): relocation truncated to fit: R_PPC_REL24 
>cfb8ComputeClipMasks32

> cfb8ComputeClipMasks32 is defined in  libcfb.a:

> nm libcfb.a | grep cfb8ComputeClipMasks32
>          U cfb8ComputeClipMasks32
> 000001e4 T cfb8ComputeClipMasks32

> The link fails cause libcfb24 references the symbol but is linked in
> after libcfb8:

> gcc -o XFree86 -O2 ... cfb/libcfb.a cfb16/libcfb16.a cfb24/libcfb24.a ...

> I could work around this by adding cfb/libcfb.a after libcfb24.a. Like:

> --- xc/programs/Xserver/Makefile.orig Mon Mar 18 17:40:43 2002
> +++ xc/programs/Xserver/Makefile      Mon Mar 18 17:41:27 2002
> @@ -909,7 +909,7 @@
>
>              MFB = mfb/libmfb.a
>               FB = fb/libfb.a
> -            CFB = cfb/libcfb.a                 cfb16/libcfb16.a                
>cfb24/libcfb24.a                cfb32/libcfb32.a
> +            CFB = cfb16/libcfb16.a             cfb24/libcfb24.a                
>cfb32/libcfb32.a cfb/libcfb.a
>
>             CFB8 = cfb/libcfb.a
>             CFB4 = cfb/libcfb.a                 cfb4/libcfb4.a

> Someone with more clues about Imakefiles should be able to fix this
> easily.

I believe this to in fact be the correct fix, although I'm a bit surprised
this doesn't show up on ix86.

> I further noticed that lib/GLw will not build without having X11 headers
> installed in /u/i/X11. At least IntrinsicP.h is missing. I'm building with
> "#define BuildServersOnly YES". Is this dependency on system headers
> intended? Do we need the GLw stuff at all for server only builds?

The dependency on system headers is generated by BuildServersOnly.
Normally, IntrinsicP.h would be found in xc/exports/include.  I see two
oversights here.  One is GLw's dependency on Xt.  There other is that it's
probably not necessary to build GLw when BuildServersOnly is YES.  Please
explicitly set BuildGLwLibrary to NO and see what happens.

Marc.

+----------------------------------+-----------------------------------+
|  Marc Aurele La France           |  work:   1-780-492-9310           |
|  Computing and Network Services  |  fax:    1-780-492-1729           |
|  352 General Services Building   |  email:  [EMAIL PROTECTED]          |
|  University of Alberta           +-----------------------------------+
|  Edmonton, Alberta               |                                   |
|  T6G 2H1                         |     Standard disclaimers apply    |
|  CANADA                          |                                   |
+----------------------------------+-----------------------------------+
XFree86 Core Team member.  ATI driver and X server internals.

_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to