ASDF는 "Another System Definition Facility"의 약자로서 간편하게 package들을 관리할 수 있게 해준다. 여기서는 간단한 사용법을 살펴본다.
package 설치(install): 자동 다운로드 및 설치가 되는 경우
설치시 선택한 위치(system-wide 또는 personal)에 파일들이 다운로드 되고 설치된다.
경로는 system-wide는 /usr/lib/sbcl, personal은 ~/.sbcl이다.
일단 한번 설치한 후에는 간단히 (require 'some-package)로 불러서 쓸 수 있다.
자동 설치가 지원되지 않는 것들은 수동 다운로드 후에 파일을 로드하는 조금 성가신 작업이 필요하다.
package 로드(load):
load path 추가: 패키지를 load할 경로 추가하기. 참고
패키지 삭제하기:
참고
happy hackin'
ps. 사용된 lisp 구현은 sbcl이다.
package 설치(install): 자동 다운로드 및 설치가 되는 경우
;;; imports asdf참고 및 다운로드/설치 가능한 패키지 리스트
(require 'asdf)
;;; imports asdf-install
(require 'asdf-install)
;;; install some package
(asdf-install:install 'some-package)
설치시 선택한 위치(system-wide 또는 personal)에 파일들이 다운로드 되고 설치된다.
경로는 system-wide는 /usr/lib/sbcl, personal은 ~/.sbcl이다.
일단 한번 설치한 후에는 간단히 (require 'some-package)로 불러서 쓸 수 있다.
자동 설치가 지원되지 않는 것들은 수동 다운로드 후에 파일을 로드하는 조금 성가신 작업이 필요하다.
package 로드(load):
;;; imports asdf
(require 'asdf)
;;; loads some package from disk (current dir. has some-package-on-disk.asd file).
(asdf:operate 'asdf:load-op :some-package-on-disk)
load path 추가: 패키지를 load할 경로 추가하기. 참고
;;; adds asdf load path(pushnew "/path/to/your/registry/" asdf:*central-registry* :test #'equal)
패키지 삭제하기:
;;; removes a package(asdf-install:uninstall :package-name)
참고
happy hackin'
ps. 사용된 lisp 구현은 sbcl이다.