Cateva indicatii pentru cei care doresc sa-si instaleze SWI-Prolog si interfata acestuia cu emacs-ul (majoritatea acestor operatii se pot efectua numai avand drepturi de supervizor, deci din contul de root):
Se copiaza local fisierul pl-<version> (de exemplu pl-3.3.0.tar.gz pe care il puteti aduce de la site-ul de download al SWI-Prolog) si se desface cu ajutorul comenzii:
tar -zxf pl-3.3.0.tar.gz
Aceasta comanda va decomprima si dezarhiva fisierul primit ca parametru, obtinandu-se un director pl-<version> cu toate informatiile necesare pentru instalare (/boot, /lib, /man, /runtime, /lisp, /src, INSTALL, INSTALL.notes, etc.)
Procedura de instalare, descrisa in INSTALL.notes presupune introducerea urmatoarelor comenzi (avand pl-<version> ca si director curent de lucru):
./configure
make
make install
Implicit, prologul se va instala in /usr/local/bin/pl cu bibliotecile in /usr/local/lib/pl-<version>.
Se poate verifica structura urmatoarelor directoare:
/usr/local/bin/pl:
@chpl
@pl
@pl-bite
!pl.
@plld
/usr/local/lib/pl-<version>/bin/i486-linux
*chpl
*pl
*pl-bite
*.plld
In acest moment, SWI-prolog este instalat in sistem. Pentru instalarea interfetei cu emacs-ul se creeaza directorul /usr/local/prolog in care se copiaza continutul arhivei emacs-prolog.tgz (acest fisier se desface tot cu comanda 'tar -zxf file_name' obtinandu-se un director 'emacs' in care se afla fisierele necesare interfetei dintre prolog si emacs)
Fiecare user va trebui sa-si modifice fisierul .emacs din propriul director home astfel incat acesta sa contina liniile:
(setq inferior-lisp-program "xlispstat")
(setq load-path (cons "usr/local/prolog/emacs" load-path))
(autoload 'run-prolog "swi-prolog19" "Run an inferior prolog
process" t)
(autoload 'prolog-mode "swi-prolog19" "SWI-Prolog mode" t)
(setq auto-mode-alist (cons '("\\.pl$".prolog-mode) auto-mode-alist))
(setq auto-mode-alist (mapcar 'purecopy
'(("\\.c$".c-mode)
("\\.h$".c++-mode)
("\\.cc$".c++mode)
("\\.C$".c++mode)
("\\.el$".emacs-lisp-mode)
("\\.emacs$.emacs-lisp-mode)
(\\".a$".c-mode)
("\\.tex$".latex-mode)
("\\.pl$".prolog-mode)
("\\.lsp$".lisp-mode))))
Fisierul /usr/local/prolog/emacs/swi-prolog19.el trebuie sa sufere niste modificari astfel incat in final sa avem:
(defconst qlisp-directory "/usr/local/prolog/emacs")
(defvar run-prolog-command
(cond ((and (equal
(getenv "OSTYPE") "Linux")
(equal (getenv "HOSTTYPE") "i386"))
"usr/local/bin/pl")
(t "pl?")))
In final, in directorul home al fiecarui user trebuie facuta o legatura simbolica spre pl, prin urmatoarea comanda:
ln -s /usr/local/bin/pl /home/<user_name>/prolog