Cross compiling Openjdk 8 for ARM, can't locate compiler

Bruno Kremel bruno.kremel at gmail.com
Wed Mar 29 20:23:25 UTC 2017


Hi All,

As I was not able to compile OpenJDK 9 (there is disscussion in other
mailing list). I tried to compile OpenJDK 8 precisely changeset 152-b02.

I configure this way:

./configure --with-jvm-interpreter=cpp \
--with-jvm-variants=zero --enable-openjdk-only \
--with-freetype-include=~/linux/buildroot-openjdk8/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/include/freetype2\
--with-freetype-lib=~/linux/buildroot-openjdk8/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib\
--with-freetype=~/linux/buildroot-openjdk8/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/\
--with-debug-level=release --openjdk-target=arm-buildroot-linux-gnueabi \
--with-sys-root=~/linux/buildroot-openjdk8/output/host/usr/arm-buildroot-linux-gnueabi/sysroot\
--with-tools-dir=~/linux/buildroot-openjdk8/output/host \
--disable-freetype-bundling --enable-unlimited-crypto --disable-headful\
OBJCOPY=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-objcopy
STRIP=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-strip
CPP_FLAGS=-lstdc++ CXX_FLAGS=-lstdc++
CPP=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-cpp\
CXX=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-g++\
CC=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc\
LD=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc\
BUILD_CPP=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-cpp\
BUILD_CXX=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-g++\
BUILD_CC=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc\
BUILD_LD=~/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc

The configure script seems to have some bug that it can't locate the
compiler properly:

...
checking for cl... /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc
configure: Resolving BUILD_CC (as /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc) faile
d, using /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc directly.
checking for cl... /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-g++
configure: Resolving BUILD_CXX (as /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-g++) fail
ed, using /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-g++ directly.
checking for ld... /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc
configure: Resolving BUILD_LD (as /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc) faile
d, using /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc directly.
checking for /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc... no
checking for /home/bruno/linux/buildroot-openjdk8/output/host/usr/bin/arm-linux-gnueabi-gcc... no
configure: error: Could not find a C compiler. You might be able to fix this by running 'sudo apt-get install build-ess
ential'.
configure exiting with result code 1
...

Those files that it claims "no" do exist and they are indeed a GCC crosscompiler.
The same parameters work for OpenJDK 9 (it does find the compiler).

How can I resolve this issue?

Thanks
Bruno Kremel



More information about the jdk8u-dev mailing list