Брать как обычно в packages.gnolltech.org.
Оказывается, с версии 1.0.52 save-lisp-and-die поддерживает компрессию образа через zlib.
1. установить slime and slime-repl from elpa
— устанавливает версию 20100404.1, но только кусочков slime, необходимых для работы с clojure. Т.е. не устанавливает *.lisp файлы
2. Установить соотв. копию slime:
— cd ~/src/elisp
— cvs -d :pserver:anonymous:anonymous@common-lisp.net:/project/slime/cvsroot co -D 20100404 slime
3. Добавить строчку в .emacs:
(setq inferior-lisp-program "sbcl")
4. M-x slime запустит slime 20100404 с sbcl. Почему-то говорит о version mismatch, что, мол swank оказывается от 20100403. (если подтвердить, то дальше, вроде, работает)
5. открыть файл из проекта созданного lein -> M-x clojure-jack-in
Обсуждение проблемы — bbs.archlinux.org
p.s. sbcl из git кстати не собирается:
//entering make-host-1.sh
//building cross-compiler, and doing first genesis
make-host-1.sh: line 31: 8034 Segmentation fault $SBCL_XC_HOST < make-host-1.lisp
siftsoft.com
Его порт явно не может работать (как минимум из-за того что в src/runtime/x86-64-assem.S не исправлено соглашение о передаче параметров, которое на win64 отличается от всех остальных x86_64 систем) и у меня не работает. Жуйкоюзер, если у тебя шестидесятичетырёхбитные окошки — можешь попробовать запустить? Если я правильно понимаю код и это не мои локальные проблемы, а он действительно не работает, то надо будет идти в рассылку со своим вариантом порта (где на данный момент GC ещё не хочет работать, но вся остальная инициализация из src/code/cold-init.lisp проходит).
Антон Коваленко анонсировал, что он завёл sbcl на x86-64 архитектуре. Собственно линк: Его порт явно не может работать (как минимум из-за того что в src/runtime/x86-64-assem.S не исправлено соглашение о передаче параметров, которое на win64 отличается от всех остальных x86_64 систем) и у меня не работает. Жуйкоюзер, если у тебя шестидесятичетырёхбитные окошки — можешь попробовать запустить? Если я правильно понимаю код и это не мои локальные проблемы, а он действительно не работает, то надо будет идти в рассылку со своим вариантом порта (где на данный момент GC ещё не хочет работать, но вся остальная инициализация из src/code/cold-init.lisp проходит).
Пока получается что-то вроде pastebin.com
Наверное стоить оформить окончательно удаление long из кода и, если такие изменения не придутся по нраву разработчикам sbcl, то забить на доведение кода до рабочего состояния.
1. Замена SEH на VEH, для обработки ошибок. Тут можно оставить заглушку до тех пор, пока не соберется относительно рабочий SBCL.
2. Изменить схемы именования системных функций. Так функции, которые в 32-битной системе (кстати, это особенность Windows или MinGW?) соответствуют символам "_Name@number", а в 64-битной "_Name" или просто "Name" (откуда возникает эта проблема? В amd64-mingw у меня под дебианом создаются символы "_Name", а с использованием drangon.org сборки — "Name")
3. Убрать из исходников надежду на то, что система поддерживает ANSI C. Или, говоря конкретнее, исправить все места, где встречается long int или unsigned long int, подставив вместо long подходящий тип, который будет иметь размер не меньше, чем long int, int и void* на всех архитектурах.
Третий пункт требует порядка 500 правок. К сожалению после того как я внёс эти правки, а также поправил правила именования и организовал заглушку на исключениях, получившийся runtime не в состоянии правильно разобрать сгенерированный в результате кросскомпиляции sbcl.core файл. Так что, судя по всему, до сих пор в коде есть места, в которых размеры переменных не сходятся.
/ touch every single page in the space to force it to be mapped. /
for (count = 0; count < bytes; count += 0x1000) {
volatile int temp = addr[count];
}
#endif
Please include enough information in a bug report that someone reading it can reproduce the problem, i.e. don't write
Subject: apparent bug in PRINT-OBJECT (or PRINT-LENGTH?)
PRINT-OBJECT doesn't seem to work with PRINT-LENGTH. Is this a bug?
but instead
Subject: apparent bug in PRINT-OBJECT (or PRINT-LENGTH?)
In sbcl-1.2.3 running under OpenBSD 4.5 on my Alpha box, when
I compile and load the file
(DEFSTRUCT (FOO (:PRINT-OBJECT (LAMBDA (X Y)
(LET ((PRINT-LENGTH 4))
(PRINT X Y)))))
X Y)
then at the command line type
(MAKE-FOO)
the program loops endlessly instead of printing the object.
A more in-depth discussion on reporting bugs effectively can be found at
chiark.greenend.org.uk "