On 24/11/16 15:48, Bhupinder Thakur wrote:
Hi,

Hello Bhupinder,

I am facing an issue where the recompilation fails when you build for
ARM32 architecture on an existing build of ARM64.

Even if I do make clean/make distclean before compiling for different
architecture it still fails.

Steps to reproduce the issue:

1. git clone git://xenbits.xen.org/xen.git
<http://xenbits.xen.org/xen.git> xen.git
2. make dist-xen XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu
3. make distclean
4. make dist-xen XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf-

Compilation fails at step 4.

If I manually remove the following files and recompile then compilation
is successful:

Remove xen/arch/arm/asm-offsets.s
Remove xen/arch/arm/xen.lds

The same issue happens if you build for ARM32 first and then try to
build for ARM64. After removing the 2 files manually, the compilation is
successful.

I am using the following toolchains:
gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu.tar.xz (for ARM64 build)
x86_64-gcc-4.9.0-nolibc_arm-unknown-linux-gnueabi.tar.xz (for ARM32
build - https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.9.0/)

I think probably the above-mentioned two files need to be removed
automatically when make distclean is run.

This is expected. You have to use make distclean will only clean the files of the host architecture (e.g x86). For cross-compilation, you will have to do make distclean XEN_TARGET_ARCH=arm64

Regards,

--
Julien Grall

_______________________________________________
Xen-devel mailing list
[email protected]
https://lists.xen.org/xen-devel

Reply via email to