fhs logic for running jqt is
FHS=: fexist BINPATH,'/libjqt.so'
BINPATH is the folder containing the frontend, jqt executable. so that if
you put both libjqt.so and libj.so.8.0.4 in linux default lib search path
or LD_LIBRARY_PATH. then both libjqt and libj will be loaded, the error 25
is the error number from j engine,

24{ 9!:8''    NB. 0 is not an error
┌───────────────┐
│file name error│
└───────────────┘

which should mean it could not load profile.ijs.  For FHS, the profile is
expected to be /etc/j/8.0.4/profile.ijs

BTW I'm puzzled by the location of your install. Running dpkg -i on the deb
file should create
/usr/bin/ijconsole
and copy libj.so.8.0.4 to
folder undet /usr/lib/....
and create a folder
/etc/j/8.0.4 with profile.ijs inside

Did you just uncompress the deb instead of running dpkg -i ?

the steps to run both ijconsole and jqt on /usr/... are
1. sudo dpkg -i deb file
2. decompress the jqt tar file.
3. sudo cp jqt exectable file to /usr/bin
4. sudo cp libjqt.so to /usr/lib/...

may need sudo chmod on jqt or libjqt.so

addons folder will be under /usr so that you also need  sudo to run pacman.

On Jul 28, 2015 5:04 AM, <[email protected]> wrote:
>
> Hi Bill,
>
> 50% progress,
>
> > If ijconsole and libj.so.8.0.4 are installed folders eg /usr/bin and
> > /usr/lib then FHS=1 otherwise it will be regarded as an old single
folder,
> > single user.
> >
> > the condition should be
> >  if. -. (0~:FHS) *. 'Linux'-:UNAME do.
> > A
> > else.
> > B
>
> Since  x *: y  <-->  -. x *. y   this is not really any change.
>
> But your explanation
>
> >Yes, FHS for debianization, separating bin and lib folders.
>
> made me make a succesful experiment:  I remembered that I had to
> provide a symlink
>
>    ~/j804/usr/bin/libj.so -> ../lib/arm-linux-gnueabihf/libj.so.8.0.4
>
> for running jqt [see below].  Apparently the presence of the symlink
> triggers a FHS=:0 initialization.  Removing the libj.so symlink from
> the bin dir will make run jconsole OK:
>
>         - the lib is found, because I invoke ijconsole through a
>           one-line shell wrapper priming $LD_LIBRARY_PATH,
>         - FHS will be initialized to 1,
>         - regex will work just fine.
>
>
> The reason for creating the symlink in first place is that jqt
> requires it.  Even though I invoke it through much the nsame wrapper:
>
>   #!/bin/sh
>   LD_LIBRARY_PATH=~/j804/usr/lib/arm-linux-gnueabihf ~/j804/usr/bin/jqt
"$@"
>
> it would *not* locate libj.so (nor libj.so.8.0.4):
>
>         $ jqt804
>         Load library /home/neitzel/j804/usr/bin/libj.so failed.
>         $
>
> The initial attempt to have libjqt.so (i.e., all both libs) in
> the lib dir resulted in the obscure error message
>
>         j first line error:  "25"
>
> when running jqt804.   Back then I had to strace(1)d jqt to find out
> that the reason for this message was the hard-wired lookup of libjqt.so
> just in the "bin" dir.
>
> Summary:
>         - for running jconsole, the libj.so symlink is harmful.
>         - for running jqt, the libj.so symlink is required.
>
>                                                         Martin
> ----------------------------------------------------------------------
> 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