I'm stuck trying to cross compile and build Lustre. 
I'm building Lustre on a X86_64 platform running Build machine is 
running  Fedora core 5 with 2.6.15 kernel.
 [EMAIL PROTECTED] utils]# uname -a
 Linux ADBuildServ.ks.lsil.com 2.6.15-1.2054_FC5 #1 SMP Tue Mar 14
15:48:20 EST 2006 x86_64 x86_64 x86_64 GNU/Linux
 
Lustre will run on embedded debian Linux with an xscale processor
(armv5l).
 
The short version:
     The compiler is using its include path instead of the include path
for debian.
     i.e.  PATH_MAX in lustre/utils/llmount.c is undefined. The compiler
is using 
 
/OE-YY/ioplinux/build-iq81340mc-linux/tmp/cross/lib/gcc/armv5l-linux/3.4
.4/include/limits.h
      instead of  /cross/srctree/include/linux/limits.h.
             /OE-YY/ioplinux/ .... is the cross compiler path.
 
Can anyone point me to the correct combination of environment and
command line variables that will 
cause the compiler to use 'my' include path instead of going to 'its'
include path?
 
I've tried a large number of combination of environment variables,
configuration options, and 
running make / gcc by hand all without success.
 
Environment variables:
 
     CC=/cross/armv5l-linux/bin/gcc
     GCC=/cross/armv5l-linux/bin/gcc
     LINUX=/cross/srctree
     LDFLAGS=-L/cross/lib
 
CFLAGS="-I/cross/srctree/include -I/cross/srctree/include/linux"
Causes unknown long long length in .config.
 
running: ./configure  --host=armv5l causes the correct compiler to be
picked up but results in a warning: 
 configure: WARNING: If you wanted to set the --build type, don't use
--host.
     If a cross compiler is detected then cross compile mode will be
used.
       CC:            /cross/armv5l-linux/bin/gcc
       CPPFLAGS:      -include $(top_builddir)/config.h
-I$(top_builddir)/lnet/include -I$(top_srcdir)/lnet/include
-I$(top_builddir)/lustre/include -I$(top_srcdir)/lustre/include
-I/cross/srctree
       LLCPPFLAGS:    -D__arch_lib__ -D_LARGEFILE64_SOURCE=1
       CFLAGS:        -g -O2
       EXTRA_KCFLAGS: -include /apps/lustre-1.4.7.3/config.h  -g
-I/apps/lustre-1.4.7.3/lnet/include
-I/apps/lustre-1.4.7.3/lustre/include
       LLCFLAGS:      -g -Wall -fPIC
 
I've also tried specifying: --build=linux
         --with-linux-config=/cross/srctree 
         --with-linux-obj=/cross/srctree
         --with-linux=/cross/srctree
and many other options without success.
 
Using the -B option to override gcc_exec_prefix on the gcc command line
by hand didn't work any better.
/cross/armv5l-linux/bin/gcc -DHAVE_CONFIG_H -I. -I. -I../..
-D__arch_lib__ -D_LARGEFILE64_SOURCE=1 -DLUSTRE_UTILS=1 -include
../../config.h -I../../lnet/include -I../../lnet/include
-I../../lustre/include -I../../lustre/include -I/cross/srctree -g -Wall
-fPIC -B/cross/srctree/include -MT llmount.o -MD -MP -MF
".deps/llmount.Tpo"   -c -o llmount.o llmount.c
 
I've also tried numerous combinations of options without success. Any
help is appreciated.
 
Thanks,
Timothy Snider 
_______________________________________________
Lustre-discuss mailing list
[email protected]
https://mail.clusterfs.com/mailman/listinfo/lustre-discuss

Reply via email to