В Debian в / usr / lib / sbcl / site-systems была установлена куча cruft, которые не загружались, потому что FASL не соответствовали версии SBCL, которая фактически установлена.
По какой-то причине ни один из этих файлов не был связан с каким-либо пакетом Debian (это старый компьютер, на котором установлена одна и та же установка Debian уже более десяти лет - он находится на Debian Sid).
Я удалял плохие системы по одной, и для большинства из них Quicklisp поступил правильно и скачал версию Quicklisp. Иногда ASDF настаивал на том, что система должна существовать по прежнему пути, но перезапуск SBCL обошел эту проблему.
Но для одной системы ASDF постоянно кэширует местоположение своего файла .asd в каталоге / usr / lib / sbcl / site-systems /. Загрузка этой системы невозможна, потому что ASDF не будет выглядеть нигде, даже после перезапуска SBCL.
Я попытался просмотреть все пути, указанные в различных конфигурационных файлах в / etc / common-lisp. Ни один из этих файлов не содержит ссылки на недостающую библиотеку.
Я прибег к выполнению grep -rli
для всех файлов в /usr
. Я не ожидаю, что это завершится менее чем за день, и он может ничего не найти, и в этом случае я буду вынужден собрать весь жесткий диск, что может занять целую неделю. Надеюсь, кеш не сжимается, потому что тогда я его никогда не найду.
Кто-нибудь знает, как ASDF сохраняет пути к файлам?