W Common Lisp, czy istnieje sposób, aby uzyskać ścieżkę do skompilowanego pliku (coś w stylu bieżącego katalogu)?common lisp - pobierz ścieżkę do pliku
Plik nie znajduje się w folderze katalogów bieżących.
W Common Lisp, czy istnieje sposób, aby uzyskać ścieżkę do skompilowanego pliku (coś w stylu bieżącego katalogu)?common lisp - pobierz ścieżkę do pliku
Plik nie znajduje się w folderze katalogów bieżących.
To powinien być komentarz, ale zamierzam podać przykłady kodu, które mogą pomóc oryginałowi.
Przede wszystkim trzeba trochę bardziej jasno określić, co chcesz zrobić. Jaki problem próbujesz rozwiązać?
drugie, oto kilka przykładów, które mogą być użyteczne:
*default-pathname-defaults*
zazwyczaj ustawiony do katalogu obraz CL został uruchomiony w:
* *default-pathname-defaults*
#P"/Users/aerique/"
merge-pathnames
pozwala na Utwórz nowe ścieżki:
* (merge-pathnames "lib/misc" *default-pathname-defaults*)
#P"/Users/aerique/lib/misc"
* (merge-pathnames "lib/misc/" *default-pathname-defaults*)
#P"/Users/aerique/lib/misc/"
asdf:system-source-directory
Zwraca ścieżkę do systemu załadowanego ASDF:
* (asdf:system-source-directory :linedit)
#P"/Users/aerique/quicklisp/dists/quicklisp/software/linedit-20111203-git/"
zobaczyć również połączony podręcznik asdf do bardziej przydatnych funkcji i plików systemowych.
Można użyć:
*default-pathname-defaults*
proszę zobaczyć http://cybertiggyr.com/gene/pathnames-0/node11.html
przypadkiem chcesz compile-file-pathname
, co daje miejsce docelowe, gdzie compile-file
napisze do.
Pomoże ci, jeśli podasz więcej kontekstu na temat tego, co próbujesz osiągnąć.
*load-truename*
lub *load-pathname*
zapewnia to, czego potrzebujesz.
http://www.lispworks.com/documentation/HyperSpec/Body/v_ld_pns.htm