Notes on setting up for cross-compilation using Linux/ARM as an example.
Put the following forms into a .lisp file and load it to set up the cross-compiler.
(require-update-modules *arm-compiler-modules* t) (require-update-modules *arm-compiler-backend-modules* t) (require-update-modules *arm-xdev-modules* t) (defpackage "ARM-LINUX") (load "ccl:lib;ffi-linuxarm") (require-update-modules *arm-xload-modules* t) (setup-arm-ftd (find-backend :linuxarm))
Grab the interfaces for the target of interest and put them in the usual place ccl directory. In the Linux/ARM case, that would be ccl:arm-headers;. If your host uses different byte order than the target, you might have to set up some sort of cross-interfaces (left as an exercise for the reader).
(cross-xload-level-0 :linuxarm :force) (cross-compile-ccl :linuxarm t)