Пролог - конкретно SWI - где находится pl?
-
19-09-2019 - |
Вопрос
Я пытаюсь настроить среду с interprolog и SWI prolog, interprolog нужно местоположение «pl» swi, но я не могу его найти.Все, что я могу найти, это swipl или plrc, и ни один из них не работает с interprolog.Если я наберу pl в терминал (это должно запустить swi-prolog), он скажет:
bash: pl :command not found
но если я напишу
swipl
или
пролог
Swiprolog работает нормально.
Дело в том, что interprolog требует pl, который я не могу найти.
у кого-нибудь есть идеи, как я могу обойти это?
Спасибо
Решение
Понял ли я ваш вопрос: является ли pl символической ссылкой на программное обеспечение пролога?Проверьте расположение pl
исполняемый пользователем where pl
Или, может быть, вам нужно сделать исходный код Prolog .pl
исполняемый файл и добавьте заголовок вверху...
#! /bin/swiprolog -f ; Prolog code here...
И используйте chmod u+x some_file.pl
.Затем, когда bash запускается, он проверяет верхний бит файла '#!/bin/swiprolog -f', я использую ключ '-f', чтобы передать его в интерпретатор пролога... проверьте документацию...
Надеюсь, это поможет, с уважением, Том.
Другие советы
which swipl
расскажет вам, где находится двоичный файл swipl.
Однако вам нужен способ заставить «pl» означать то же самое, что и «swipl».
Для этого вам нужно использовать псевдоним pl для swipl.
Код alias pl='swipl'
сделаю это в BASH.
поэтому после псевдонимов вы можете запустить interprolog из командной строки и посмотреть, работает ли он.
Я не уверен, что у вас это получилось.В идеале вам следует сделать следующее:
- Открыть
runSWISPListener.sh
. - Изменять
${SWI_BIN_DIRECTORY}/pl
к${SWI_BIN_DIRECTORY}/swipl
Тогда все будет работать нормально.