OpenJDK ARMv7 binaries for Linux
Anton Kozlov
akozlov at azul.com
Mon Mar 19 13:00:48 UTC 2018
On 19.03.2018 14:39, Grey, Chris UTC CCS wrote:
> The Linux distro we are using is a Yocto-based custom tarball using only the recipes that we needed in an effort to keep the entire tarball of the file system as small as possible. The bitbake application does all the cross-compiling for us. Now that we are expanding our embedded world to include Java, we now need a JVM, but would prefer to use Java 9, again to keep the filesystem footprint of the JVM as small as possible.
As far as I know, there are yocto layers for Azul's Zulu
https://github.com/zulu-openjdk/meta-zulu-java
https://github.com/zulu-openjdk/meta-azul-zulu-java
These layers download binary from the website instead of building. You can use this as a starting point for any prebuilt openjdk.
> If not, are there any details pertinent to building the JVM from source that I should be aware of? If this were a traditional Linux-targetted source, I'd expect to run a configure script, which would generate a makefile that, then would complete the build. However this wouldn't be a traditional build. It's a cross-compile build where the make would need to know NOT to use the PC's native Linux GNU compiler and instead use the GNU ARM cross compiler. Thus I expect some manual configuration would be required along with likely numerous details about the target. Is there a website or a document that details exactly how this is done? Or am I simply imagining it being worse than it really is?
Cross-compilation of OpenJDK is relatively easy, thanks for underlying autoconf. Most of cross-compilation tutorials for linux will make sense. Yes, you need to provide additional info for configure, but it's not rocket science. Please refer to scripts in aarch32-port root repository for examples targeted Raspberry PI: cross_configure.sh and cross_make.sh calls configure and make with most of parameters specified, except sysroot on your build system, of course. You can adjust scripts for your needs.
Thanks,
Anton
More information about the aarch32-port-dev
mailing list