[libbluray-devel] Found a JRE compiled for Android (ARM)

Shaya Potter spotter at gmail.com
Wed Jan 20 22:11:44 UTC 2021


I can't speak to any specifics, but there are some obvious issues that
would prevent libbluray from loading it.

libbluray searches for the the java root dir in a number of places
(including the JAVA_HOME env)

from the root dir, it searches in a number of subdir's for libjvm.so

the dirs it searches are

    static const char * const jvm_dir[]  = {"jre/lib/" JAVA_ARCH
"/server",                                            "lib/server",
                                        "lib/client",


it turns out that none of those dirs are where this jvm stores libjvm.so.
it stores it in "lib/arm/client".

hence it can't find it.  a simple experiment would be for you to build your
own libbluray and add "lib/arm/client" or perhaps even "lib" JAVA_ARCH
"/client" (again, unsure) and see if that improves the situation.

with that said, I have some skepticism that it can work when loaded into
the shared data partition as google has gone through efforts to lock down
executable code being stored there, with that said, I don't know how that
impact dlopen and the like and might only impact Android Q users.

but again, this is just low hanging fruit issues, dont really know what it
would be.  (with that said, I think the holy grail for many people would be
to have kodi be able to use java on android).

The other issue is that these devs don't provide any source code for the
jvm that they built.  as it's under the GPL and they aren't providing
sources they built it from, they are arguably in violation of the license.
that's going to prevent it from anyone putting significant effort into it.


On Sat, Jan 2, 2021 at 4:35 AM Vitor Dall'Acqua <veggav at gmail.com> wrote:

> Just wanted to share this with you,
>
> Someone made a JRE for Termux that runs on Android devices.
> https://github.com/MasterDevX/Termux-Java
>
> I've tried to add this to Kodi and setenv
>   setenv("JAVA_HOME", "/storage/emulated/0/JAVA/", 1);
>
> added the binaries and the *.jar files
>
> Libbluray still won't see it.
>
> DEBUG <general>: CBlurayCallback::Logger - bdj.c:746: BD-J check: Failed
> to load JVM library
>
> I have little to no experience with Android and how paths are set but if
> it's just a matter of figuring out how to set it, it would be really nice
> to have.
>
> Hope someone shares the sentiment and feels like having a look at it.
>
> Regards
> Vitor
>
> _______________________________________________
> libbluray-devel mailing list
> libbluray-devel at videolan.org
> https://mailman.videolan.org/listinfo/libbluray-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/libbluray-devel/attachments/20210121/1a8ab05e/attachment.html>


More information about the libbluray-devel mailing list