bug-apl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Can't get GNU-APL to see it's Workspace Libraries (eg: wslib3, wslib


From: Dr . Jürgen Sauermann
Subject: Re: Can't get GNU-APL to see it's Workspace Libraries (eg: wslib3, wslib4, wslib5)
Date: Sat, 5 Dec 2020 12:05:10 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0

Hi Mark,

please see my comments inline below.

Best Regards,
Jürgen


On 12/4/20 10:25 PM, gemesys@idirect.com wrote:
Hi;
I've downloaded the source and built the GNUAPL interpreter on a
CentOS-7.4 Linux box, and it seems to work quite well!

I'm using the GNUAPL 1.7 version, as 1.8 has been reported to segfault
by some other folks using this APL.
I suppose by 1.8 you mean the official GNU release. GNU releases are only
made every one or two years, therefore the segfault reported is most likely
already fixed in the latest version in SVN. See

https://savannah.gnu.org/projects/apl/         (Tab: Source Code)

for detailed inmstructions of how to fetch the latest version
with git, svn, or cvs.


I would therefore recommend that you change to the latest version which
can be
The apl-1.7 compiled and installed nicely, and runs well, if I

use:    xkbcomp  apl.xkb :0 -w 0
to set up the xterm display, and

then:   apl --noColor
to run the interpreter.

Really looks like it runs fine - except I cannot get GNUAPL to "see" it's
libraries, ie. wslib3, wslib4 and wslib5.

I've tried setting environment vars APL_LIB_ROOT and GNU_APL_LIBS to
various values (the build directory where the source is, or the
/usr/local/lib/apl directory where the installed binary and shared system
libraries are installed to, or a local user directory, etc.

The only APL "Library" that the interpreter is able to "see" is the one
called "workspaces" in either the source build directory, or a local user
directory.

What this means is that none of the examples, or SQL stuff, or HTML stuff
that is provided with the interpreter can be accessed, and none of the
scripts can be run.

All the files seem to be installed to the correct places - but the
compiled interpreter cannot "see" the workspaces, despite all the files
being installed to the correct directories:

When I run the APL interpreter,and enter ")libs", I get indication of
everything except "workspaces" is "MISSING":

(Here is what the APL interpreter reports: )

---------------------------  example GNUAPL Session ----------------------
[root@l2-centos74 apl-1.7]# apl --noColor

                     ______ _   __ __  __    ___     ____   __
                    / ____// | / // / / /   /   |   / __ \ / /
                   / / __ /  |/ // / / /   / /| |  / /_/ // /
                  / /_/ // /|  // /_/ /   / ___ | / ____// /___
                  \____//_/ |_/ \____/   /_/  |_|/_/    /_____/

             Welcome to GNU APL version 1.7 / Unversioned directory

                 Copyright (C) 2008-2016  Dr. Jürgen Sauermann
                        Banner by FIGlet: www.figlet.org

                 This program comes with ABSOLUTELY NO WARRANTY;
                           for details run: apl --gpl.

      This program is free software, and you are welcome to redistribute it
          according to the GNU Public License (GPL) version 3 or later.

       )libs
Library root: /usr/local/lib/apl

Library reference number mapping:

---------------------------------------------------------------------------
Ref Conf  Path                                                State   Err
---------------------------------------------------------------------------
  0 ENV   /usr/local/lib/apl/workspaces                        present
  1 ENV   /usr/local/lib/apl/wslib1                            missing (2)
  2 ENV   /usr/local/lib/apl/wslib2                            missing (2)
  3 PSYS  @GNU_APL_LIBS@/wslib3                                missing (2)
  4 PSYS  @GNU_APL_LIBS@/wslib4                                missing (2)
  5 PSYS  @GNU_APL_LIBS@/wslib5                                missing (2)
  6 ENV   /usr/local/lib/apl/wslib6                            missing (2)
  7 ENV   /usr/local/lib/apl/wslib7                            missing (2)
  8 ENV   /usr/local/lib/apl/wslib8                            missing (2)
  9 ENV   /usr/local/lib/apl/wslib9                            missing (2)
===========================================================================

-------------- End Example GNUAPL Session ---------------------------------

This looks like a configuration issue, but I have not been able to track
it down, as the "./configure" and the "make" all ran fine.

Any ideas anyone???   Thanx for ideas, from anyone!
That looks like a pretty normal installation. Please note the following.

The Err column shows the errno reported by the operating system
(same as  "errno --list" explains). In your case 2 means ENOENT aka.
"No such file or directory" which normally means that the directories
are indeed not there.

The State column tells if GNU APL can access the directory and missing
in this column means not accessible for whatever reason. In your case
the reason was ENOENT.

The Conf columns tells how GNU APL has computed the path that it
shows (and uses). This can be:

PWD if the path was computed from the current directory (these paths
change when you start GNU APL from a different directory),

ENV if you set the library root via a configuration variable, and

PSYS if you set it in a preferences file (typically /usr/local/etc/gnu-apl.d/
these days).

PUSER if you set it in a preferences file in the user's home directory (I
have forgotten from ewhere exactly).

CMD if you set it with the APL command )LIBS.

Now, libraries 3, 4, and 5 tell me that something went wrong in ./configure.
The ./configure script should have replaced @GNU_APL_LIBS@ by something
reasonable. On my machine it gives:

---------------------------------------------------------------------------
Ref Conf Path                                                State   Err
---------------------------------------------------------------------------
 0 PWD /home/eedjsa/workspaces                              missing (2)
 1 PWD /home/eedjsa/wslib1                                  missing (2)
 2 PWD /home/eedjsa/wslib2                                  missing (2)
 3 PSYS /usr/local/lib/apl/wslib3                            present
 4 PSYS /usr/local/lib/apl/wslib4                            present
 5 PSYS /usr/local/lib/apl/wslib5                            present
 6 PWD /home/eedjsa/wslib6                                  missing (2)
 7 PWD /home/eedjsa/wslib7                                  missing (2)
 8 PWD /home/eedjsa/wslib8                                  missing (2)
 9 PWD /home/eedjsa/wslib9                                  missing (2)
===========================================================================

in my home and

---------------------------------------------------------------------------
Ref Conf Path                                                State   Err
---------------------------------------------------------------------------
 0 PWD /home/eedjsa/apl-1.8/workspaces                      present
 1 PWD /home/eedjsa/apl-1.8/wslib1                          present
 2 PWD /home/eedjsa/apl-1.8/wslib2                          present
 3 PSYS /usr/local/lib/apl/wslib3                            present
 4 PSYS /usr/local/lib/apl/wslib4                            present
 5 PSYS /usr/local/lib/apl/wslib5                            present
 6 PWD /home/eedjsa/apl-1.8/wslib6                          missing (2)
 7 PWD /home/eedjsa/apl-1.8/wslib7                          missing (2)
 8 PWD /home/eedjsa/apl-1.8/wslib8                          missing (2)
 9 PWD /home/eedjsa/apl-1.8/wslib9                          missing (2)
===========================================================================


in my apl-1.8 directory (where I normally work),

My recommendations at this point would be:

run linux commands:

 autoreconf
./configure
make
sudo make install

in the top-level directory and watch for errors, especially in
autoreconf, configure and make install.

That should fix the broken libs 3, 4, and 5.

Run "apl -l 37" to troubleshoot how the paths are being computed, and,
most importantly, make sure that make install is run with root permissions
and that after "make install" the paths not only exist but have their
write and exec permissions set.
- Mark Langdon,
   Ontario, Canada.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]