Cross Compiling for x86_64 on x86
David Holmes - Sun Microsystems
David.Holmes at Sun.COM
Mon Dec 7 09:32:42 UTC 2009
To cross-compile you need a toolset that supports cross-compilation -
including any tools used internally in the JDK. I'm not sure if the
existing toolsets - eg adlc - qualify.
At a minimum you need to ensure you explicitly set the following:
os_family = linux
arch = x86
arch_model = x86_64
os_arch = linux_x86
os_arch_model = linux_x86_64
lib_arch = amd64
otherwise they will be determined from the properties of the build machine.
I don't know if anyone has tried this, but it is where I would start.
Note that building 32-bit on 64-bit is not truly cross-compiling because
you simply execute the 32-bit tools on the 64-bit system.
Deepak Mathews said the following on 12/07/09 16:36:
> I am trying to cross compile for x86 64 bit from a x86 32 bit host machine.
> I am facing a lot of issues in this regard.
> Has anyone been able to successfully do this.
> Why is the target being linked against libjvm.so which is in the
> ALT_BOOTDIR on the host system.
> Even if i fix that issue by copying libjvm.so from a 64bit JDK, an adlc
> utility is run during the compilation, which is of 64 bit, so cannot be
> executed on the host machine.
More information about the build-dev