[libbluray-devel] Found a JRE compiled for Android (ARM)
Shaya Potter
spotter at gmail.com
Sat Jan 23 20:41:57 UTC 2021
I'm guessing you mean, one can't add directories in an apk?
On Sat, Jan 23, 2021 at 10:38 PM Vitor Dall'Acqua <veggav at gmail.com> wrote:
> Yes, I'm adding it to the apk, the problem is that if I set it like this:
>
> #undef JDK_HOME
> #define JDK_HOME "/lib/arm64/"
>
> It needs to look at the root of JDK_HOME. I can't add folders.
> And from the looks of the log it will look for it in
> /lib/arm64/jre/lib/aarch64/server/libjvm.so
>
> On Sat, Jan 23, 2021 at 5:33 PM Shaya Potter <spotter at gmail.com> wrote:
>
>> so seems related to the issue I mentioned
>>
>>
>> https://stackoverflow.com/questions/59608865/library-is-not-accessible-for-the-namespace-classloader-namespace
>>
>> seems to be that the solution is that you will have to include it in the
>> apk itself.
>>
>> On Sat, Jan 23, 2021 at 10:26 PM Vitor Dall'Acqua <veggav at gmail.com>
>> wrote:
>>
>>> Well... managed to get it to see...
>>>
>>> 2021-01-23 18:21:35.375 T:19738 DEBUG <general>:
>>> CBlurayCallback::Logger - bdj.c:311: Opening
>>> /storage/emulated/0/JAVA/jre/lib/aarch64/server/libjvm ...
>>>
>>> 2021-01-23 18:21:35.377 T:19738 DEBUG <general>:
>>> CBlurayCallback::Logger - dl_posix.c:54: can't open library
>>> '/storage/emulated/0/JAVA/jre/lib/aarch64/server/libjvm.so': dlopen failed:
>>> library "/storage/emulated/0/JAVA/jre/lib/aarch64/server/libjvm.so" needed
>>> or dlopened by
>>> "/mnt/expand/cab01563-bcca-48fa-a0bf-0fbddaf9b192/app/org.xbmc.kodi19DV-BHAaVSj7u8lhvDk_OSQttQ==/lib/arm64/libkodi.so"
>>> is not accessible for the namespace "classloader-namespace"
>>>
>>>
>>>
>>>
>>>
>>> On Sat, Jan 23, 2021 at 3:30 PM Shaya Potter <spotter at gmail.com> wrote:
>>>
>>>>
>>>> i looked at what they call "source code", its not source (unless I'm
>>>> missing it). It's just the pre built binaries.
>>>>
>>>> I didn't say that google did that exactly, I said, I think they have
>>>> made it difficult to put executables there in Android Q (with that said,
>>>> might not be a near term proble if the app isn't targeted specifically to
>>>> android Q's API level, which kodi probably is not). What I also said, I
>>>> dont know how that would impact dlopen (which is not directly executing the
>>>> program) if android would block that as well.
>>>>
>>>> with that said, I'd still think (perhaps incorrectly) from a security
>>>> point of view, kodi would want to ship the jvm within their apk as this
>>>> would prevent external things from breaking it and not have it provided by
>>>> the user (then again, on all desktop environments it is provided by the
>>>> user).
>>>>
>>>> for reference where I came across a discussion a bit ago:
>>>> https://www.reddit.com/r/androiddev/comments/b2inbu/psa_android_q_blocks_executing_binaries_in_your/
>>>>
>>>> if I had to guess, it probably would work for now (even on Q), but in
>>>> the future there might be issues as google prevents older and older api
>>>> targets from being updated in the play store.
>>>>
>>>> On Sat, Jan 23, 2021 at 8:08 PM Vitor Dall'Acqua <veggav at gmail.com>
>>>> wrote:
>>>>
>>>>> But Shaya, the source is present in the linked file here.
>>>>>
>>>>> The thing is that it's beyond my capabilities try to add this to Kodi
>>>>> as a dependency.
>>>>> Also another problem I'm seeing here is that while I'm able to pack
>>>>> into an apk the libjvm.so so it is installed when you install Kodi, this
>>>>> isn't the case for the .jar files.
>>>>>
>>>>> You mentioned that Google made sure to close down the possibility of
>>>>> loading a .so file from outside the app folder?
>>>>> So you think even if libbluray could read /storage/emulated/0/ it
>>>>> would fail in use the libjvm?
>>>>>
>>>>> On Sat, Jan 23, 2021 at 2:30 PM Shaya Potter <spotter at gmail.com>
>>>>> wrote:
>>>>>
>>>>>> vitor, I'd think that kodi's path manipulation wouldn't impact the
>>>>>> jre at all. It's just for internal kodi use for themes and media and the
>>>>>> like, but nothing to do with OS operations (and petri can verify if this or
>>>>>> true, motivated the need for libbluray to have the ability to a pluggable
>>>>>> set of file system operations that could be provided to it). But while
>>>>>> libbluray can use the a provided set of operations, the jvm can't.
>>>>>>
>>>>>> I'd think one of your goals should be to get the group that made
>>>>>> those jvm binaries to release the source and build for it, then kodi can
>>>>>> include it as part of their build process and even ship with it in the play
>>>>>> store. I'd think vlc would be interested in this, as well? This would
>>>>>> also be necessary as would have to ship different jvm's for 32 bit kodi and
>>>>>> 64 bit.
>>>>>>
>>>>>> On Sat, Jan 23, 2021 at 2:22 PM Vitor Dall'Acqua <veggav at gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Petri, do you happen to have the source with your latest changes?
>>>>>>>
>>>>>>> code.videolan.org is down and I would like to work on this during
>>>>>>> the weekend.
>>>>>>>
>>>>>>> On Fri, Jan 22, 2021 at 6:08 PM Petri Hintukainen <
>>>>>>> phintuka at users.sourceforge.net> wrote:
>>>>>>>
>>>>>>>> pe, 2021-01-22 kello 16:54 -0300, Vitor Dall'Acqua kirjoitti:
>>>>>>>> > I have not tried to build Java from source.
>>>>>>>> > The version used by Termux, can be found as pre compiled and
>>>>>>>> source
>>>>>>>> > here:
>>>>>>>> >
>>>>>>>> https://github.com/Hax4us/java/releases/download/v8/jdk8_aarch64.tar.gz
>>>>>>>> >
>>>>>>>> > I can give a go with Kodi, which is what I'm familiar with, to git
>>>>>>>> > clone the latest changes from libbluray, add the lib/arm/client
>>>>>>>> to it
>>>>>>>> > and add the files from that archive linked here.
>>>>>>>> > Does it still need a bin folder inside? is the structure correct
>>>>>>>> > there?
>>>>>>>>
>>>>>>>> Structure seems to be normal. I think you need only files from
>>>>>>>> /jdk8/jre/ and maybe from /glib/ (?).
>>>>>>>>
>>>>>>>> JAVA_HOME would point to .../jdk8/ or .../jdk8/jre/. Or, you could
>>>>>>>> try
>>>>>>>> if simply symlinking .../jdk8/jre/lib/aarch64/server/libjvm.so next
>>>>>>>> to
>>>>>>>> libbluray.so works.
>>>>>>>>
>>>>>>>> The files in top-level bin folder are wrapper scripts. Looking at
>>>>>>>> those, you may need to set LD_LIBRARY_PATH so that libraries from
>>>>>>>> /glib
>>>>>>>> can be found. But I don't know if JVM needs those, or if those are
>>>>>>>> only
>>>>>>>> used with some of the applications.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> libbluray-devel mailing list
>>>>>>>> libbluray-devel at videolan.org
>>>>>>>> https://mailman.videolan.org/listinfo/libbluray-devel
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> libbluray-devel mailing list
>>>>>>> libbluray-devel at videolan.org
>>>>>>> https://mailman.videolan.org/listinfo/libbluray-devel
>>>>>>>
>>>>>> _______________________________________________
>>>>>> libbluray-devel mailing list
>>>>>> libbluray-devel at videolan.org
>>>>>> https://mailman.videolan.org/listinfo/libbluray-devel
>>>>>>
>>>>> _______________________________________________
>>>>> libbluray-devel mailing list
>>>>> libbluray-devel at videolan.org
>>>>> https://mailman.videolan.org/listinfo/libbluray-devel
>>>>>
>>>> _______________________________________________
>>>> libbluray-devel mailing list
>>>> libbluray-devel at videolan.org
>>>> https://mailman.videolan.org/listinfo/libbluray-devel
>>>>
>>> _______________________________________________
>>> libbluray-devel mailing list
>>> libbluray-devel at videolan.org
>>> https://mailman.videolan.org/listinfo/libbluray-devel
>>>
>> _______________________________________________
>> libbluray-devel mailing list
>> libbluray-devel at videolan.org
>> https://mailman.videolan.org/listinfo/libbluray-devel
>>
> _______________________________________________
> 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/20210123/6a64ebe0/attachment.html>
More information about the libbluray-devel
mailing list