Указание неабсолютных путей к библиотекам в GNU APL

Я хочу иметь возможность использовать один и тот же файл конфигурации на всех своих машинах, и, к сожалению, мое имя пользователя на работе отличается, поэтому мне сложно использовать абсолютные пути.

Есть ли общий способ указать неабсолютные каталоги для переменных LIBREF-* в файле настроек GNU APL? Похоже, расширение тильды и переменные окружения не интерпретируются. Но я не могу найти информацию об этом через Google.

Спасибо за ваше время.

РЕДАКТИРОВАТЬ 1:

Чтобы было ясно, я пробовал следующее:

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

Но, похоже, он появляется внутри )LIBS с$HOMEнетронутый.

2 ответа

Вы можете указать сопоставление между ссылочными номерами библиотек (т. е. от 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 (что и предназначено для апстрима).

Это работает вокруг моей проблемы, но не было четко задокументировано нигде, что я мог найти, поэтому я решил, что было бы хорошо, если бы был ответ. Ниже приведены некоторые ссылки, которые я нашел полезными, обнаружив это.

Другие вопросы по тегам