Ich möchte ein lokales Projekt zu den bekannten Projekten von asdf hinzufügen, aber aufgrund der Tatsache, dass asdf von quicklisp installiert und konfiguriert wurde und die *central-registry*
auf "# P / home / user / quicklisp / quicklisp /" zeigt , die .lisp-Dateien enthält. Ich weiß nicht, wie man es macht, da das Handbuch erklärt, dass ein symbolischer Link in die Verzeichnis würde es tun, aber ich möchte nicht in Quicklisp herumspielen. (Es funktioniert jedoch als Hotfix!)
Deshalb: Wie füge ich ein lokales Projekt zu asdf (NICHT QUICKLISP) hinzu, das von quicklisp installiert und konfiguriert wurde?
Wenn Sie Quicklisp verwenden, können Sie das dedizierte Verzeichnis verwenden
~/quicklisp/local-projects/
wird vor den anderen gescannt
Verzeichnisse. Um es zu verwenden, legen Sie einfach Ihr Projekt oder einen symbolischen Link.
Wenn Sie jedoch ASDF
wirklich konfigurieren möchten, tun Sie dies wie in der
Dokumentation .
Zum Beispiel können Sie dies setzen:
%Vor% in deinem ~/.config/common-lisp/source-registry.conf.d/my-asdf.conf
zu
füge ein Verzeichnis hinzu oder
Wenn Sie alle Unterverzeichnisse durchsuchen möchten.
Das ASDF-Handbuch hat in Abschnitt 3 :
Seit ASDF 2, der bevorzugte Weg, um zu konfigurieren, wo ASDF Ihren findet systems ist die Source-Registry-Einrichtung, die vollständig beschrieben ist Kapitel dieses Handbuchs. Siehe Steuern, wo ASDF sucht Systeme .
Punkt 7 in Steuern, wo ASDF nach Systemen sucht ist
Die Quellregistrierung wird aus dem Systemkonfigurationsverzeichnis /etc/common-lisp/source-registry.conf.d/ konfiguriert, falls es existiert.
Dieser Ort ist in Debian verfügbar und ist was ich benutze. Standardmäßig legt Debian die Quellen heruntergeladener CL-Bibliotheken in /usr/share/common-lisp/source
ab. Allerdings weiß ich nicht (obwohl ich versucht habe, herauszufinden), wie dieser Ort ASDF bekannt gemacht wird.
Sie können also Dateien mit Pfadnamen zu diesem Speicherort hinzufügen, um diese Pfadnamen ASDF mitzuteilen. Ich habe eine Datei hinzugefügt, /etc/common-lisp/source-registry.conf.d/04-local.conf
, die
(: Baum #p "/ usr / local / share / common-lisp / source /")
und jetzt kann ich Quellen von lokal heruntergeladenen CL Bibliotheken in /usr/local/share/common-lisp/source/
setzen und sie werden für ASDL sichtbar sein. Die Syntax :tree
wird in beschrieben
Konfigurieren von ASDF zum Suchen Ihrer Systeme .
asdf: * zentrale Registrierung * wird jetzt abgeschrieben. Siehe Unterabschnitt 3.2: Konfigurieren von ASDF, um Ihre Systeme zu finden - alter Stil .
Tags und Links common-lisp asdf quicklisp