libXt 1.1.1 cross compilation breakage

Jason Woodward jason.woodward at timesys.com
Tue Mar 15 16:20:27 PDT 2011


Hi Gaetan,

> I'd like to understand better, per-target flags are not for
> cross-compilation
> and in this case, it should be a no-op. 
> 
> Can you provide the command that is issued? Is it trying to
> cross-compile makestrs?
> I suspect the XT_CFLAGS are missing.
> 
> This is what I have on a regular build.
> 
> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I..
> -I/home/nadon/xorg/src/include    -g -O2 -MT makestrs.o -MD -MP -MF
> .deps/makestrs.Tpo -c -o makestrs.o makestrs.c
> /bin/bash ../libtool --tag=CC   --mode=link gcc -std=gnu99
> -I/home/nadon/xorg/src/include    -g -O2   -o makestrs makestrs.o  
> libtool: link: gcc -std=gnu99 -I/home/nadon/xorg/src/include -g -O2
> -o makestrs makestrs.o
 
I should note that I was previously passing makestrs_CFLAGS= when
building and that looks like it has been replaced by XT_CFLAGS and
so...

XT_CFLAGS seems to be the problem for me on ppc as it is pulling in
the target headers and tripping up over:

include/bits/endian.h:34:4: warning: #warning Cannot determine current
byte order, assuming big-endian.
  CCLD   makestrs
makestrs.o: In function `WriteHeaderProlog':
makestrs.c:(.text+0x101): undefined reference to `__nldbl_fprintf'
makestrs.c:(.text+0x17d): undefined reference to `__nldbl_fprintf'
makestrs.c:(.text+0x1b1): undefined reference to `__nldbl_fprintf'
makestrs.o: In function `IntelABIWriteHeader':
makestrs.c:(.text+0x26a): undefined reference to `__nldbl_fprintf'
makestrs.c:(.text+0x2d0): undefined reference to `__nldbl_fprintf'
makestrs.o:makestrs.c:(.text+0x30e): more undefined references to
`__nldbl_fprintf' follow
makestrs.o: In function `WriteHeader':
makestrs.c:(.text+0x86b): undefined reference to `__nldbl_sprintf'
makestrs.c:(.text+0x8dc): undefined reference to `__nldbl_sprintf'
makestrs.o: In function `WriteSourceLine':
makestrs.c:(.text+0x993): undefined reference to `__nldbl_printf'
makestrs.o: In function `IntelABIWriteSource':
makestrs.c:(.text+0xa33): undefined reference to `__nldbl_printf'
makestrs.c:(.text+0xa7b): undefined reference to `__nldbl_printf'
makestrs.o: In function `IntelABIBCWriteSource':
makestrs.c:(.text+0xaf7): undefined reference to `__nldbl_printf'
makestrs.c:(.text+0xb61): undefined reference to `__nldbl_printf'
makestrs.o:makestrs.c:(.text+0xbb1): more undefined references to
`__nldbl_printf' follow
makestrs.o: In function `WriteSource':
makestrs.c:(.text+0xf5e): undefined reference to `__nldbl_fprintf'
makestrs.c:(.text+0xf9c): undefined reference to `__nldbl_printf'
makestrs.c:(.text+0xfb6): undefined reference to `__nldbl_printf'
makestrs.o: In function `DoLine':
makestrs.c:(.text+0x1686): undefined reference to `__nldbl_fprintf'
collect2: ld returned 1 exit status
make[1]: *** [makestrs] Error 1

I understand the problem better now.  If this is a no-fix from your
end I can just update the build to prebuild with
make -C util makestrs CC=gcc CFLAGS= XT_CFLAGS=


take care,
jason



More information about the xorg mailing list