[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.