Correct Compiler for ARM / Arch64 for the jdk8u forest? (-m64 not supported)

Martijn Verburg martijnverburg at gmail.com
Thu Apr 20 12:21:39 UTC 2017


Hi Erik/Andrew/Dalibor,

Ah that clears it up - we were getting confused with what port was in
mainstream or not.  OK, we'll pick the ssh://hg.openjdk.java.net/
aarch64-port/jdk8u for our Java 8 build (Zero is interesting, but of less
use to the wider community) and then we'll see what happens for 9 and 10 a
little down the line.

Thanks all again for the speedy assistance!

Cheers,
Martijn

On 20 April 2017 at 13:17, dalibor topic <dalibor.topic at oracle.com> wrote:

> If this is related to yesterday's similar query [0], then I assume you're
> using http://hg.openjdk.java.net/jdk8u/jdk8u/ for the build.
>
> There is no dedicated ARM port in JDK 8u. You would need to build the Zero
> interpreter instead, if you are building from the forest above, or, as
> Andrew suggested, use a different forest from the AArch64 Port Project.
>
> cheers,
> dalibor topic
>
> [0] http://mail.openjdk.java.net/pipermail/build-dev/2017-April/
> 018974.html
>
>
> On 20.04.2017 13:16, Martijn Verburg wrote:
>
>> Hi all,
>>
>> We've been putting together a community build farm and have wrangled from
>> ARM machines. We are building from jdk8u and have the following
>> configuration:
>>
>> -----
>>
>> A new configuration has been successfully created in
>> /home/jenkins/workspace/george_arm_test/openjdk/build/linux-
>> aarch64-normal-server-release
>> using configure arguments
>> '--with-boot-jdk=/usr/lib/jvm/java-1.7.0-openjdk-arm64 --enable-ccache
>> --with-jvm-variants=server
>> --with-cacerts-file=/home/jenkins/workspace/george_arm_test/
>> cacerts_area/security/cacerts
>> --with-alsa=/home/jenkins/workspace/george_arm_test/alsa-lib-1.0.27.2
>> --with-freetype=/home/jenkins/workspace/george_arm_test/open
>> jdk/installedfreetype
>> --with-x=/usr/include/X11 --with-debug-level=release'.
>>
>> Configuration summary:
>> * Debug level:    release
>> * JDK variant:    normal
>> * JVM variants:   server
>> * OpenJDK target: OS: linux, CPU architecture: aarch64, address length: 64
>>
>> Tools summary:
>> * Boot JDK:       java version "1.7.0_95" OpenJDK Runtime Environment
>> (IcedTea 2.6.4) (7u95-2.6.4-3) OpenJDK 64-Bit Server VM (build 24.95-b01,
>> mixed mode)  (at /usr/lib/jvm/java-1.7.0-openjdk-arm64)
>> * C Compiler:     gcc-5 (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4) 5.4.0
>> version 5.4.0 (at /usr/bin/gcc-5)
>> * C++ Compiler:   g++-5 (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4) 5.4.0
>> version 5.4.0 (at /usr/bin/g++-5)
>>
>> Build performance summary:
>> * Cores to use:   16
>> * Memory limit:   128878 MB
>> * ccache status:  installed and in use
>>
>> Configured the JDK
>>
>> ------
>>
>> We notice that the configure output states:
>>
>> checking if the C compiler supports "-m64"... no
>> checking if the C++ compiler supports "-m64"... no
>> checking if both compilers support "-m64"... no
>> checking if the C compiler supports "-m64"... no
>> checking if the C++ compiler supports "-m64"... no
>> checking if both compilers support "-m64"... no
>>
>> -----
>>
>> The hotspot build then fails (predictably enough) at:
>>
>> CCACHE_COMPRESS=1  CCACHE_SLOPPINESS=time_macros /usr/local/bin/ccache
>> /usr/bin/g++-5 -DLINUX -D_GNU_SOURCE -DAMD64 -DPRODUCT -I.
>> -I/home/jenkins/workspace/george_arm_test/openjdk/hotspot/
>> src/share/vm/prims
>> -I/home/jenkins/workspace/george_arm_test/openjdk/hotspot/src/share/vm
>> -I/home/jenkins/workspace/george_arm_test/openjdk/hotspot/
>> src/share/vm/precompiled
>> -I/home/jenkins/workspace/george_arm_test/openjdk/hotspot/src/cpu/x86/vm
>> -I/home/jenkins/workspace/george_arm_test/openjdk/hotspot/
>> src/os_cpu/linux_x86/vm
>> -I/home/jenkins/workspace/george_arm_test/openjdk/hotspot/src/os/linux/vm
>> -I/home/jenkins/workspace/george_arm_test/openjdk/hotspot/src/os/posix/vm
>> -I../generated -DHOTSPOT_RELEASE_VERSION="\"25.71-b00\""
>> -DHOTSPOT_BUILD_TARGET="\"product\"" -DHOTSPOT_BUILD_USER="\"jenkins\""
>> -DHOTSPOT_LIB_ARCH=\"aarch64\" -DHOTSPOT_VM_DISTRO="\"OpenJDK\""
>>  -DTARGET_OS_FAMILY_linux -DTARGET_ARCH_x86 -DTARGET_ARCH_MODEL_x86_64
>> -DTARGET_OS_ARCH_linux_x86 -DTARGET_OS_ARCH_MODEL_linux_x86_64
>> -DTARGET_COMPILER_gcc -DCOMPILER2 -DCOMPILER1 -fPIC -fno-rtti
>> -fno-exceptions -D_REENTRANT -fcheck-new -fvisibility=hidden -m64  -pipe
>> -fno-strict-aliasing  -g -fno-omit-frame-pointer -O3  -DVM_LITTLE_ENDIAN
>> -D_LP64=1 -Werror -Wpointer-arith -Wsign-compare -Wundef -Wunused-function
>> -Wunused-value     -std=gnu++98 -c -MMD -MP -MF
>> ../generated/dependencies/precompiled.hpp.gch.d -fpch-deps -x c++-header
>> /home/jenkins/workspace/george_arm_test/openjdk/hotspot/src/
>> share/vm/precompiled/precompiled.hpp
>> -o precompiled.hpp.gch
>> *g++-5: error: unrecognized command line option '-m64'*
>>
>> -----
>>
>> We're inexperienced at build on this architecture, I assuming that we
>> either need a compiler that supports -m64 or that -m64 should not be
>> passed
>> through in this case?
>>
>> Cheers,
>> Martijn
>>
>>
> --
> <http://www.oracle.com> Dalibor Topic | Principal Product Manager
> Phone: +494089091214 <tel:+494089091214> | Mobile: +491737185961
> <tel:+491737185961>
>
> ORACLE Deutschland B.V. & Co. KG | Kühnehöfe 5 | 22761 Hamburg
>
> ORACLE Deutschland B.V. & Co. KG
> Hauptverwaltung: Riesstr. 25, D-80992 München
> Registergericht: Amtsgericht München, HRA 95603
>
> Komplementärin: ORACLE Deutschland Verwaltung B.V.
> Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
> Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
> Geschäftsführer: Alexander van der Ven, Jan Schultheiss, Val Maher
>
> <http://www.oracle.com/commitment> Oracle is committed to developing
> practices and products that help protect the environment
>



More information about the build-dev mailing list