Compiling OpenJDK 7 on Arm
David Holmes
david.holmes at oracle.com
Wed Sep 17 06:54:10 UTC 2014
On 17/09/2014 4:03 PM, Richard Kolb wrote:
> Hello,
>
> I am one of the community members of AdoptOpenJDK.
> I've been able to build the OpenJDK 8 on my Arm (Raspberry pi)
>
> But since there is no configure, it seems the Makefile of 7 assumes x86.
Not quite - it assumes you are targetting the platform you are building on.
> Can anyone tell me how to compile to target Arm (zero) and specify hard
> float.
Try:
make ARCH=arm ...
for a start. Then you will need to pass the right args to your
cross-compiler, for which EXTRA_CFLAGS and EXTRA_LDFLAGS can be used.
NOt sure of the details of doing a zero build in OpenJDK 7 though.
David
> thanks,
> Richard.
>
>
> g++ -DLINUX -D_GNU_SOURCE -DIA32
> -I/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/src/share/vm/prims
> -I/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/src/share/vm
> -I/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/src/share/vm/precompiled
> -I/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/src/cpu/x86/vm
> -I/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/src/os_cpu/linux_x86/vm
> -I/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/src/os/linux/vm
> -I/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/src/os/posix/vm
> -I/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/src/share/vm/adlc
> -I../generated -DASSERT -DTARGET_OS_FAMILY_linux -DTARGET_ARCH_x86
> -DTARGET_ARCH_MODEL_x86_32 -DTARGET_OS_ARCH_linux_x86
> -DTARGET_OS_ARCH_MODEL_linux_x86_32 -DTARGET_COMPILER_gcc -DCOMPILER2
> -DCOMPILER1 -fno-rtti -fno-exceptions -D_REENTRANT -fcheck-new
> -fvisibility=hidden -m32 -march=i586 -pipe -Werror -g -c -o
> ../generated/adfiles/adlparse.o
> /media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/src/share/vm/adlc/adlparse.cpp
>
> Assembler messages:
> Error: unknown architecture `i586'
>
> Error: unrecognized option -march=i586
> cc1plus: error: unrecognized command line option '-m32'
> cc1plus: error: bad value (i586) for -march switch
> make[6]: *** [../generated/adfiles/adlparse.o] Error 1
> make[6]: Leaving directory
> `/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/build/linux-arm/hotspot/outputdir/linux_i486_compiler2/product'
> make[5]: *** [ad_stuff] Error 2
> make[5]: Leaving directory
> `/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/build/linux-arm/hotspot/outputdir/linux_i486_compiler2/product'
> make[4]: *** [product] Error 2
> make[4]: Leaving directory
> `/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/build/linux-arm/hotspot/outputdir'
> make[3]: *** [generic_build2] Error 2
> make[3]: Leaving directory
> `/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/make'
> make[2]: *** [product] Error 2
> make[2]: Leaving directory
> `/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60/hotspot/make'
> make[1]: *** [hotspot-build] Error 2
> make[1]: Leaving directory
> `/media/548da502-ebde-45c0-9ab2-de5e2431ee0b/home/jdk/jdk7u60'
> make: *** [build_product_image] Error 2
>
More information about the jdk7u-dev
mailing list