web-dev-qa-db-fra.com

Compilation de LISP commun vers un exécutable

J'ai récemment commencé à apprendre Common LISP en utilisant SBCL. Comment puis-je compiler mes programmes LISP dans un binaire Windows?

33
Shenal Silva

Faire hello.exe:

* (defun main () (print "hello"))

MAIN
* (sb-ext:save-LISP-and-die "hello.exe" :toplevel #'main :executable t)
[undoing binding stack and other enclosing state... done]
[saving current LISP image into hello.exe:
writing 3160 bytes from the read-only space at 0x22000000
writing 2592 bytes from the static space at 0x22100000
writing 30134272 bytes from the dynamic space at 0x22300000
done]
> dir hello.exe
31,457,304 hello.exe
> hello.exe

"hello"

Fichier exécutable de 31 Mo!

27
KIM Taegyoon

Utilisation SB-EXT:SAVE-LISP-AND-DIE. Voir http://www.sbcl.org/manual/#Saving-a-Core-Image pour plus de détails.

12
Anton Kovalenko

Il existe plusieurs outils pour le faire. Vous pouvez commencer par Buildapp .

8
Vsevolod Dyomkin
(defun main ()
    (format t "Hello, world!~%"))

(sb-ext:save-LISP-and-die "hello-world.exe"
:executable t
:toplevel 'main)
4
zxt