Perhaps my memory failed me, or /proc/self/exe was added in android, but
its path is not that of the current executable. Relying on -lib or cwd can
be a workaround.


On Oct 10, 2017 12:46 AM, "Joe Bogner" <[email protected]> wrote:

> Yes, it looks like it's 32-bit
>
> $ uname -a
> Linux localhost 3.18.0-15954-g2ba05641585b #1 SMP PREEMPT Mon Oct 2
> 21:16:22 PDT 2017 i686 Android
>
> Thank you again. I know it's somewhat of a fringe case to support however
> it seems chromebooks are becoming fairly popular in education. Proper
> support would probably take a bit more work, but for being able to specify
> -lib would be great.
>
> Alternatively, it looks like termux creates a /proc/self/exe so that could
> be used too and would probably be preferred to having to specify a -lib
>
> $ ls -lah /proc/self/exe
> lrwxrwxrwx    1 u0_a48   u0_a48         0 Oct  9 12:44 /proc/self/exe ->
> /data/data/com.termux/files/usr/bin/busybox
>
> I know I'd be interested in running jconsole on android under termux too -
> not just on chromebook. Perhaps others would be interested too. I
> previously ran jconsole on android under termux to keep jhs running in the
> background
>
>
> On Mon, Oct 9, 2017 at 12:02 PM, bill lam <[email protected]> wrote:
>
> > Joe, I don't have any experience in chromebook. Android is not
> > exact linux, the line in jeload.c
> >  n=readlink("/proc/self/exe",arg2,sizeof(arg2));
> > for detecting the current path of jconsole does not work under
> > android because there is no such file. shared objects are usually
> > installed under a system folder. The files in your strace are
> > actually symlink to libj.so inside the system folder.
> >
> > Your suggestion of using -lib parameter seems feasible. I will
> > take a look. You run the x86 jconsole. Is your chromebook
> > running a 32-bit OS?
> >
> > Пн, 09 окт 2017, Joe Bogner написал(а):
> > > bill - thanks for the reply. Excellent - yes they are there. It seems
> the
> > > path to libj.so is hard-coded and it's not accepting the -lib parameter
> > >
> > > $ ./jconsole
> > > Load library /data/app/com.jsoftware.j.android-9/lib/x86/libj.so
> failed.
> > >
> > > $ /data/data/com.termux/files/home/assets/libexec/android-
> > libs/x86/jconsole
> > > -lib
> > > /data/data/com.termux/files/home/assets/libexec/android-
> libs/x86/libj.so
> > > Load library /data/app/com.jsoftware.j.android-9/lib/x86/libj.so
> failed.
> > >
> > >
> > > strace shows this:
> > >
> > >
> > >
> > > fstatat64(AT_FDCWD, "/data/data/com.jsoftware.j.android/lib/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> android/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> > android-1/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> > android-2/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> > android-3/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> > android-4/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> > android-5/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> > android-6/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> > android-7/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> > android-8/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/data/app/com.jsoftware.j.
> > android-9/lib/x86/libj.so",
> > > 0xfff0bff0, 0) = -1 ENOENT (No such file or directory)
> > > fstatat64(AT_FDCWD, "/sdcard/Android/data", {st_mode=S_IFDIR|0771,
> > > st_size=4096, ...}, 0) = 0
> > > fchmodat(AT_FDCWD, "/data/data/com.termux/files/usr/tmp", 0777) = 0
> > >
> > > Which seems to show it hitting this:
> > >
> > > https://github.com/jsoftware/jsource/blob/
> eebfb7ba5b3149d5a1ae8dee6221da
> > 076af4ea3f/jsrc/jeload.c#L141
> > >
> > >
> > > On Mon, Oct 9, 2017 at 10:44 AM, bill lam <[email protected]> wrote:
> > >
> > > > I am unable to test jandroid for some time, so I am not so sure, but
> > iirc
> > > > jconsole for all architectures are bundled inside APK. Not inside
> libs
> > > > folder but inside a tar file under the asset folder.  Try decompress
> > the
> > > > tar file, there are 3 or 4 jconsole there.
> > > >
> > > > On Oct 9, 2017 10:21 PM, "Joe Bogner" <[email protected]> wrote:
> > > >
> > > > > I have a new HP G5 chromebook that can install apps from the Play
> > Store.
> > > > It
> > > > > won't allow side-loading unless developer mode is turned from
> > recovery
> > > > mode
> > > > > - which causes a warning every time the device is booted.
> > > > >
> > > > > I spent a few minutes trying to compile from termux and failed.
> > > > >
> > > > > I looked into extracting the content from the APK but noticed
> > jconsole
> > > > was
> > > > > missing. I seem to recall early versions of the jandroid also
> > included a
> > > > > jconsole. It looks like the current apk has the libj.so but no
> > jconsole
> > > > >
> > > > > It has a Intel Celeron N3060 x86_64 processor.
> > > > >
> > > > > Are there any relatively simple options for getting jconsole or
> > jandroid
> > > > to
> > > > > run on this device without going to developer mode?
> > > > >
> > > > > Thanks for any ideas or help
> > > > >
> > > > > Joe
> > > > > ------------------------------------------------------------
> > ----------
> > > > > For information about J forums see http://www.jsoftware.com/
> > forums.htm
> > > > ------------------------------------------------------------
> ----------
> > > > For information about J forums see http://www.jsoftware.com/
> forums.htm
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> > --
> > regards,
> > ====================================================
> > GPG key 1024D/4434BAB3 2008-08-24
> > gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> > gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to