Couchbase-lite-java-ce-root for build for linux arm64 architecture

Hello Team,

We want to support couchbase lite on our Nvidia Xavier board, which support Linux. so we were trying to build “couchbase-lite-java-ce-root” for linux/arm64 but support is not available.

Can someone guild how to generate "couchbase-lite-java-3.1.0-SNAPSHOT.jar for linux arm64.

We have cross compiled “GitHub - couchbase/couchbase-lite-core: Cross-platform C++ core library for Couchbase Lite

Supported architecture as per install_lite_core.sh script:
linux/x86_64, macos/x86_64, windows/x86_64, android/arm64-v8a, android/armeabi-v7a, android/x86, android/x86_64

I’m sorry… that is not a supported architecture.

As you can see, most of the actual functionality for Couchbase Lite is implemented as a native library. The native library needs to be compiled for the target ABI/OS. We have not built the native library for linux/arm.

Thanks for the replay, I made some small changes and corss compiled Native for linux/arm64,(GitHub - couchbase/couchbase-lite-core: Cross-platform C++ core library for Couchbase Lite) but not stuck in creating jar out of it, as this create JNI.so.

I have placed arm64 bit native library inside linux/x86_64 just to that compilation go further. but we are facing below issue.

I have placed arm64 bit native library inside linux/x86_64

Think about this for a moment…that folder is expected to have an x86_64 native library inside and you have put in arm64 instead.

I recently achieved to compile CBL-Java on a linux (something like Ubuntu) with ARM64 (aarch64).

I’ve run some tests and a proof of concept and it works reasonably well.
But I have not yet automated the process.

I had to make several changes on the scripts and gradle from github.

I wasn’t able to get the ARM toolchain to transcompile, so I compiled directly on the ARM machine.
I have a pdf document with my note but I am a new user here, I cannot upload document.

Why not markdown or something? Then you could make a gist or github repo.

Hi, could you share your code the script you modified if it’s possible?