Я использую quicklisp в качестве инструмента управления пакетами для SBCL.
Однако иногда мне казалось не очень удобным устанавливать пакет в домашнюю директорию текущего пользователя с помощью ql:quickload
. (Например, если я использую (ql:quickload "xmls")
для установки xmls, другие пользователи не смогут его использовать.)
Что еще хуже, я хотел бы запустить код lisp как скрипт. Поэтому, когда я использую пакет, установленный quicklisp, мне нужно неудобно добавить абсолютный путь к этому пакету, например:
#!/usr/bin/sbcl --script
(require 'xmls "..../quicklisp/dists/quicklisp/software/xmls-1.4/xmls")
Если я использую (require 'xmls)
, компилятор не будет работать, потому что он не сможет найти этот пакет, если я использую параметры --script
.
Кто-нибудь знает, как решить проблему, чтобы я мог одновременно использовать --script
и require
(не нужно добавлять абсолютный путь)?