Re: SOS....I was frustrated by cross-compiling a TinyX server

Joe <[email protected]>
Newsgroups gmane.comp.xfree86.devel
Message-ID <[email protected]>
Hi..

This problem is encountered when u use a script file or spec file to
cross compile X

Your  host is executing the ARM binary...and obviously fails..

To crosscompile - just do the following

unpack X4.4.0 sources
create host.def and copy to xc/config/cf/
modify cross.def in xc/config/cf to your toolchain path
remove xfontsel in xc/programs/Imakefile

and then go to xc directory
and run $make World CROSSCOMPILEDIR= toolchain bin directory path
XCURSORGEN=xcursorgen

and subsequently $make install DESTDIR=bla bla bla

IF and only if you intend to use spec or scripts.....PLEASE READ how
to set BOOTSTRAPCFLAGS....most of the stuff mentioned...dosent
work.....hope someone could tell me which BOOTSTRAPCFLAGS works for X
4.4.0 ARM Cross Compile.....

Vinod



On 6/9/05, Kai.Niu <[email protected]> wrote:
>  
>  
> 
> Hi ALL: 
> 
> I was so confusing about the cross compiling process about XFree86 package.
> I encountered such a weird error message like below. 
> 
> Dose anyone know what the "cc1" dose imply? I guess cc1 means a symbolic
> link so gcc. I make a cc1 symbol link to either arm-linux-gcc and native x86
> gcc. None of them bring me out of hell. I started compiling as "make World
> CROSSCOMPILEDIR=…blablablabla". My host.def file like below: 
> 
>   
> 
> ****************************host.def************************************************
> 
> /* $XFree86: xc/config/cf/cross.def,v 1.3 2002/04/04 14:05:33 eich Exp $ */ 
> 
> /* 
> 
>  * This file contains redefinitions of some symbols to enable 
> 
>  * cross compilation: e.g. paths for include files and paths to 
> 
>  * compiler images.  It will have to be edited to reflect these 
> 
>  * given your local configuration. 
> 
>  */ 
> 
> #define KDriveXServer              YES 
> 
> #define TinyXServer                YES 
> 
> #define CrossCompiling             YES 
> 
> #define TouchScreen                YES 
> 
> #undef  BuildRandR 
> 
> #define BuildRandR                 YES 
> 
> #define BuildXInputLib             YES 
> 
> #define ProjectRoot                /root/TinyX/xc 
> 
> #define Freetype2Dir               $(TOP)/extras/freetype2 
> 
> #define Freetype2LibDir            $(TOP)/exports/lib 
> 
> #define BuildXTrueType             YES 
> 
> #define BuildScreenSaverExt        NO 
> 
> #define BuildScreenSaverLibrary    NO 
> 
> #define SharedLibXss               YES 
> 
> #define ServerXdmcpDefines 
> 
> #define XfbdevServer               YES 
> 
> #define HasZlib                    NO 
> 
> #define HasPNGlib                  NO 
> 
> *****************************end of
> host.def******************************* 
> 
> And I made the necessary modification on cross.def file to present my host
> cross-toolchain configuration. 
> 
>   
> 
> The error message like below: 
> 
>   
> 
> **********************error message
> dump************************************* 
> 
> Building XFree86 version 4.4.0 (29 February 2004). 
> 
>   
> 
> I hope you checked the configuration parameters in ./config/cf 
> 
> to see if you need to pass BOOTSTRAPCFLAGS. 
> 
>   
> 
> Thu Jun  9 06:05:25 EDT 2005 
> 
>   
> 
> cd ./config/imake && make  -f Makefile.ini BOOTSTRAPCFLAGS="" CC="cc" clean 
> 
> make[1]: Entering directory `/root/TinyX/xc/config/imake' 
> 
> rm -f ccimake imake.o imake 
> 
> rm -f *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a tags TAGS make.log \#* 
> 
> rm -f -r Makefile.proto Makefile Makefile.dep bootstrap 
> 
> rm -f imakemdep_cpp.h 
> 
> make[1]: Leaving directory `/root/TinyX/xc/config/imake' 
> 
> make  Makefile.boot 
> 
> make[1]: Entering directory `/root/TinyX/xc' 
> 
> cd ./config/imake && make -w -f Makefile.ini BOOTSTRAPCFLAGS="" CC="cc" 
> 
> make[2]: Entering directory `/root/TinyX/xc/config/imake' 
> 
> making imake with BOOTSTRAPCFLAGS= and
> CROSSCOMPILEFLAGS=-DCROSSCOMPILEDIR="/root/usr/local/arm/3.4.1/arm-linux/bin"
> in config/imake 
> 
> cc -o ccimake
> -DCROSSCOMPILEDIR=\"/root/usr/local/arm/3.4.1/arm-linux/bin\"
>  -O -I../../include -I../../imports/x11/include/X11 ccimake.c 
> 
> if [ -n "/root/usr/local/arm/3.4.1/arm-linux/bin" ] ; then \ 
> 
> /root/usr/local/arm/3.4.1/arm-linux/bin/cc -E `./ccimake` \ 
> 
> -DCROSSCOMPILE_CPP imakemdep.h > imakemdep_cpp.h; \ 
> 
> else touch imakemdep_cpp.h; fi 
> 
> make[2]: Leaving directory `/root/TinyX/xc/config/imake' 
> 
> make[1]: Leaving directory `/root/TinyX/xc' 
> 
> cc: installation problem, cannot exec `cc1': No such file or directory 
> 
> make[2]: *** [imakemdep_cpp.h] Error 1 
> 
> make[1]: *** [imake.proto] Error 2 
> 
> make: *** [World] Error 2 
> 
> ***************************end of error
> msg*************************************************** 
> 
>   
> 
> If anyone knows what wrong and how to get rid of those mess. Please tell me!
> Thx in advanced. And please explain me a little bit about the cc, cc1 and
> what the cross compiling scheme internally…..thank you guys very very
> much!!!!!!!! 
> 
>   
> 
>   
> 
>   
> 
>                                                            
>               Kai @ 10th, Jun, 2005
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.