在GNU APL中指定库的非绝对路径



我希望能够在我的所有机器上使用相同的配置文件,不幸的是,我的用户名在工作中不同,所以绝对路径对我来说很难使用。

在GNUAPL首选项文件中,有没有一种通用的方法可以为LIBREF-*变量指定非绝对目录?波浪形扩展和环境变量似乎没有被解释。但我在谷歌上找不到任何关于这方面的信息。

谢谢你抽出时间。

编辑1:

为了明确起见,我尝试了以下方法:

LIBREF-0 = $HOME/Documents/apl-libs/lib0

但它似乎显示在(LIBS内部,$HOME完好无损。

您可以指定库参考号(即0到9(与GNU APL首选文件中的目录之间的映射,或者在运行时使用(LIBS命令。看见https://www.gnu.org/software/apl/apl-intro.html#CH_4.3.4.

在搜索文档时,我发现了对$APL_LIB_ROOT环境变量的引用。

如果设置了,则系统和用户首选项文件中没有其他库目录定义,则GNU APL将使用以下目录结构来填充这些值:

LIBREF-0 = $APL_LIB_ROOT/workspaces
LIBREF-1 = $APL_LIB_ROOT/wslib1
LIBREF-2 = $APL_LIB_ROOT/wslib2
LIBREF-3 = $APL_LIB_ROOT/wslib3
LIBREF-4 = $APL_LIB_ROOT/wslib4
LIBREF-5 = $APL_LIB_ROOT/wslib5
LIBREF-6 = $APL_LIB_ROOT/wslib6
LIBREF-7 = $APL_LIB_ROOT/wslib7
LIBREF-8 = $APL_LIB_ROOT/wslib8
LIBREF-9 = $APL_LIB_ROOT/wslib9

然而,至少在我使用的系统(GNU Guix(上,在系统范围的配置文件中有3、4和5所包含库的条目(这是上游的意图(。

这可以解决我的问题,但在我能找到的任何地方都没有明确的记录,所以我认为这是一个很好的答案。以下是一些我发现有帮助的链接。

  • https://lists.gnu.org/archive/html/bug-apl/2017-06/msg00058.html
  • https://bug-apl.gnu.narkive.com/7ARmdV18/gnu-apl-installation
  • https://www.mail-archive.com/bug-apl@gnu.org/msg06617.html

最新更新