|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] need to compile 32bit on x86_64 cpu
Reading the README i found a way to do this
export XEN_TARGET_ARCH=i386
or
export XEN_TARGET_ARCH=x86_32
Then do
make linux-2.6-xen-config CONFIGMODE=menuconfig
Now menuconfig shows the 32bit cpu's. However when i run the build command, it fails badly giving the following errors:
make -f buildconfigs/mk.linux-2.6-xen build make[1]: Entering directory `/home/xen/xen-3.0.2-2' if grep "^CONFIG_MODULES=" linux-2.6.16-xen/.config ; then \ make -C linux-2.6.16-xen ARCH=i386 modules ; \
make -C linux-2.6.16-xen ARCH=i386 INSTALL_MOD_PATH=/home/xen/xen-3.0.2-2/dist/install modules_install ; \ fi CONFIG_MODULES=y make[2]: Entering directory `/home/xen/xen-3.0.2-2/linux-2.6.16-xen' CHK include/linux/version.h
CC arch/i386/kernel/asm-offsets.s In file included from include/linux/thread_info.h:20, from include/linux/preempt.h:10, from include/linux/spinlock.h:50, from include/linux/capability.h:45,
from include/linux/sched.h:7, from arch/i386/kernel/asm-offsets.c:7: include/linux/bitops.h: In function `generic_hweight64': include/linux/bitops.h:142: warning: integer constant is too large for "unsigned long" type
include/linux/bitops.h:142: warning: integer constant is too large for "unsigned long" type include/linux/bitops.h:143: warning: integer constant is too large for "unsigned long" type include/linux/bitops.h:143: warning: integer constant is too large for "unsigned long" type
include/linux/bitops.h:144: warning: integer constant is too large for "unsigned long" type include/linux/bitops.h:144: warning: integer constant is too large for "unsigned long" type include/linux/bitops.h:145: warning: integer constant is too large for "unsigned long" type
include/linux/bitops.h:145: warning: integer constant is too large for "unsigned long" type include/linux/bitops.h:146: warning: integer constant is too large for "unsigned long" type include/linux/bitops.h:146: warning: integer constant is too large for "unsigned long" type
In file included from include/linux/timex.h:61, from include/linux/sched.h:11, from arch/i386/kernel/asm-offsets.c:7: include/asm/timex.h: In function `get_cycles': include/asm/timex.h:25: warning: left shift count >= width of type
include/asm/timex.h: In function `get_cycles_sync': include/asm/timex.h:38: warning: left shift count >= width of type In file included from include/asm/semaphore.h:43, from include/linux/sched.h:20,
from arch/i386/kernel/asm-offsets.c:7: include/linux/rwsem.h:27:65: asm/rwsem.h: No such file or directory In file included from include/asm/semaphore.h:43, from include/linux/sched.h:20,
from arch/i386/kernel/asm-offsets.c:7: include/linux/rwsem.h: In function `down_read': include/linux/rwsem.h:45: warning: implicit declaration of function `__down_read' include/linux/rwsem.h: In function `down_read_trylock':
include/linux/rwsem.h:56: warning: implicit declaration of function `__down_read_trylock' include/linux/rwsem.h: In function `down_write': include/linux/rwsem.h:68: warning: implicit declaration of function `__down_write'
include/linux/rwsem.h: In function `down_write_trylock': include/linux/rwsem.h:79: warning: implicit declaration of function `__down_write_trylock' include/linux/rwsem.h: In function `up_read': include/linux/rwsem.h:90: warning: implicit declaration of function `__up_read'
include/linux/rwsem.h: In function `up_write': include/linux/rwsem.h:100: warning: implicit declaration of function `__up_write' include/linux/rwsem.h: In function `downgrade_write': include/linux/rwsem.h:110: warning: implicit declaration of function `__downgrade_write'
In file included from arch/i386/kernel/asm-offsets.c:7: include/linux/sched.h: At top level: include/linux/sched.h:309: error: field `mmap_sem' has incomplete type In file included from include/asm/suspend.h:6,
from include/linux/suspend.h:5, from arch/i386/kernel/asm-offsets.c:10: include/asm/desc.h: In function `_set_gate': include/asm/desc.h:97: warning: right shift count >= width of type
include/asm/desc.h: In function `set_tssldt_descriptor': include/asm/desc.h:137: warning: right shift count >= width of type include/asm/desc.h: In function `set_seg_base': include/asm/desc.h:164: warning: cast from pointer to integer of different size
include/asm/desc.h:165: warning: cast from pointer to integer of different size arch/i386/kernel/asm-offsets.c: In function `foo': arch/i386/kernel/asm-offsets.c:28: error: structure has no member named `eax'
arch/i386/kernel/asm-offsets.c:29: error: structure has no member named `ebx' arch/i386/kernel/asm-offsets.c:30: error: structure has no member named `ecx' arch/i386/kernel/asm-offsets.c:31: error: structure has no member named `edx'
arch/i386/kernel/asm-offsets.c:32: error: structure has no member named `esi' arch/i386/kernel/asm-offsets.c:33: error: structure has no member named `edi' arch/i386/kernel/asm-offsets.c:34: error: structure has no member named `ebp'
arch/i386/kernel/asm-offsets.c:35: error: structure has no member named `esp' arch/i386/kernel/asm-offsets.c:36: error: structure has no member named `eip' arch/i386/kernel/asm-offsets.c:43: error: structure has no member named `hard_math'
arch/i386/kernel/asm-offsets.c:69: error: structure has no member named `esp0' arch/i386/kernel/asm-offsets.c:74: error: `VSYSCALL_BASE' undeclared (first use in this function) arch/i386/kernel/asm-offsets.c:74: error: (Each undeclared identifier is reported only once
arch/i386/kernel/asm-offsets.c:74: error: for each function it appears in.) make[3]: *** [arch/i386/kernel/asm-offsets.s] Error 1 make[2]: *** [prepare0] Error 2 make[2]: Leaving directory `/home/xen/xen-3.0.2-2
/linux-2.6.16-xen' make[2]: Entering directory `/home/xen/xen-3.0.2-2/linux-2.6.16-xen' if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map -b /home/xen/xen-3.0.2-2/dist/install -r 2.6.16-xenx86_32
; fi make[2]: Leaving directory `/home/xen/xen-3.0.2-2/linux-2.6.16-xen' make -C linux-2.6.16-xen ARCH=i386 INSTALL_PATH=/home/xen/xen-3.0.2-2/dist/install vmlinuz make[2]: Entering directory `/home/xen/xen-3.0.2-2
/linux-2.6.16-xen' make[2]: Nothing to be done for `vmlinuz'. make[2]: Leaving directory `/home/xen/xen-3.0.2-2/linux-2.6.16-xen' make -C linux-2.6.16-xen ARCH=i386 INSTALL_PATH=/home/xen/xen-3.0.2-2/dist/install install
make[2]: Entering directory `/home/xen/xen-3.0.2-2/linux-2.6.16-xen' sh /home/xen/xen-3.0.2-2/linux-2.6.16-xen/arch/i386/boot/install.sh 2.6.16-xenx86_32 arch/i386/boot/bzImage System.map "/home/xen/xen-3.0.2-2
/dist/install"
*** Missing file: arch/i386/boot/bzImage *** You need to run "make" before "make install".
make[3]: *** [install] Error 1 make[2]: *** [install] Error 2 make[2]: Leaving directory `/home/xen/xen-
3.0.2-2/linux-2.6.16-xen' make[1]: *** [build] Error 2 make[1]: Leaving directory `/home/xen/xen-3.0.2-2' make: *** [linux-2.6-xen-install] Error 2
My guess is that its complaining about some libraries for 32bit and since the os is 64bit, they are not present.
Can anyone please shed more light on this ?
Thanks.
-- regards,
Anand Gupta
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|