2015-02-24 4 views
0

Я пытаюсь установить Научную библиотеку GNU для Lisp (GSLL). Я уже видел ответы на аналогичный вопрос, но я не нашел связи с тем, что происходит в моем случае.Установите GSLL на SBCL с Quicklisp

Может ли кто-нибудь помочь перейти отсюда?

CL-USER> (lisp-implementation-type) 
"SBCL" 
CL-USER> (lisp-implementation-version) 
"1.2.4.debian" 

CL-USER> (ql:quickload "gsll") 

; cc -m64 -I/lrde/home/alandi/quicklisp/dists/quicklisp/software/cffi_0.14.0/ -o /lrde/home/alandi/.cache/common-lisp/sbcl-1.2.4.debian-linux-x64/lrde/home/alandi/quicklisp/dists/quicklisp/software/cffi_0.14.0/libffi/libffi-unix /lrde/home/alandi/.cache/common-lisp/sbcl-1.2.4.debian-linux-x64/lrde/home/alandi/quicklisp/dists/quicklisp/software/cffi_0.14.0/libffi/libffi-unix.c 
; 

; compilation unit aborted 
; caught 2 fatal ERROR conditions 

To load "gsll": 
    Load 8 ASDF systems: 
    alexandria antik asdf-system-connections cffi-grovel 
    cffi-libffi metabang-bind osicat trivial-garbage 

    Install 1 Quicklisp gsll 
    release: 
; Loading "gsll" 

; cc -m64 -I/lrde/home/alandi/quicklisp/dists/quicklisp/software/cffi_0.14.0/ -o /lrde/home/alandi/.cache/common-lisp/sbcl-1.2.4.debian-linux-x64/lrde/home/alandi/quicklisp/dists/quicklisp/software/cffi_0.14.0/libffi/libffi-unix /lrde/home/alandi/.cache/common-lisp/sbcl-1.2.4.debian-linux-x64/lrde/home/alandi/quicklisp/dists/quicklisp/software/cffi_0.14.0/libffi/libffi-unix.c 

; 
; compilation unit aborted 
; caught 2 fatal ERROR conditions 
; Evaluation aborted on Component "gsll" not found. 
+2

Это очень похоже на то, что у вас есть проблема с компиляцией C. Попробуйте запустить команду 'cc -m64 ...' в командной строке и вставить ее в описание ошибки. Моя невинная догадка заключается в том, что для компиляции вам не хватает некоторой зависимости C (библиотека и/или заголовки). – schaueho

ответ

2

Я нахожусь на OS X, но, возможно, это поможет вам в любом случае. Я мог загрузить lib на (ql:quickload "gsll"), но мне пришлось внести корректировку:

Путь к динамическим библиотекам GSL найден по вызову оболочки gsl-config --prefix.

Для меня этот звонок возвращает /usr/local/Cellar/gsl/1.16, но мои dynlibs находятся в /usr/local/Cellar/gsl/1.16/lib. Поэтому мне просто пришлось внести некоторые изменения в имена файлов в файле ~/quicklisp/dists/quicklisp/software/gsll-20140211-git/init/init.lisp.

Обратитесь за помощью к (cffi:define-foreign-library libgslcblas ...) и (cffi:define-foreign-library libgsl ...) и настройте там свои пути.

Возможно, это поможет.

+0

Спасибо, Фрэнк. Вот и все. – Joe

 Смежные вопросы

  • Нет связанных вопросов^_^