Actualmente, cualquier compilador de Prolog permite la creación de ejecutables independientes. Sin embargo, la forma de hacerlo varía enormemente de un compilador a otro y además no siempre resulta fácil.
En este apartado se explica cómo crear ejecutables en el SWI-Prolog. Se ha elegido este compilador porque se encuentra disponible en diversas plataformas (Windows y Linux) y porque la creación de los ejecutables es bastante sencilla.
Para crear un ejecutable existe el predicado qsave_program/2. Este predicado graba el estado actual del Prolog en el fichero que le indiquemos. La forma de crear el ejecutable será: en primer lugar, compilar el programa en Prolog y en segundo lugar, llamar al predicado qsave_program/2.
El predicado principal del programa Prolog deberá tener una forma similar a esta:
main:-
%
% Cuerpo del programa principal
%
halt.
Y para crear el ejecutable del anterior programa, haremos lo siguiente:
?- qsave_program(ejecutable, [stand_alone(true), goal(main)]).
La opción goal(main) sirve para indicar el predicado que se ejecutará una vez arranque el Prolog.
El ejecutable creado se deberá acompañar siempre de las librerías adecuadas. En concreto, para Windows, cuando se lleve el ejecutable a otro ordenador, habrá que copiar también todos los ficheros con extensión dll que se encuentran en el directorio bin del SWI-Prolog.