Pregunta

Tengo SBCL corriendo en una máquina de Ubuntu. Quiero escribir un pequeño programa que quiero darle a un amigo que solo tiene Windows ejecutándose. ¿Cuál es la forma más rápida de compilarlo de forma cruzada en mi máquina en un " standalone " programa de Windows (es decir, la combinación habitual de tiempo de ejecución + núcleo)?

¿Fue útil?

Solución

SBCL puede realizar una compilación cruzada, pero debido a que el código se está evaluando durante el proceso, necesita acceso a la arquitectura de destino. La construcción procesada de SBCL está bien explicada por Christophe Rhodes en SBCL: a Sanely -Bootstrappable Common Lisp .

Si no tiene acceso directo a una máquina con Windows, supongo que podría intentar Wine (espero que esto falle) o ReactOS dentro de un emulador o hipervisor (QEMU, HVM, Xen, lo que sea ...).

Otros consejos

Sospecho que instalar Windows en una máquina virtual y compilar tu aplicación sería la forma más rápida.

Los núcleos son específicos de una combinación de plataforma / versión. Use el método de Luís o distribúyalo con un Lisp diferente, como CLisp.

  

No hay absolutamente ninguna compatibilidad binaria de imágenes centrales entre diferentes programas de soporte de tiempo de ejecución. Incluso los tiempos de ejecución construidos desde las mismas fuentes en diferentes momentos se consideran incompatibles para este propósito. SBCL Manual

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top