Index: src/prelude/Makefile.am
===================================================================
--- src/prelude/Makefile.am	(revision 66f8528e75e91260ef63ddd93ec58ba5e42ae5dc)
+++ src/prelude/Makefile.am	(revision 7cc2c8de391b81c66900242eeeedd230a3f06b5f)
@@ -20,5 +20,5 @@
 # put into lib for now
 cfalibdir = ${libdir}
-cfalib_DATA = builtins.cf extras.cf prelude.cf
+cfalib_DATA = builtins.cf extras.cf prelude.cf bootloader.c
 noinst_DATA = ../libcfa/libcfa-prelude.c
 
@@ -45,4 +45,6 @@
 	${AM_V_GEN}${abs_top_srcdir}/src/driver/cfa-cpp -l prelude.cf $@  # use src/cfa-cpp as not in lib until after install
 
+bootloader.c : bootloader.cf extras.cf builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
+	${AM_V_GEN}${abs_top_srcdir}/src/driver/cfa-cpp -tpm bootloader.cf $@  # use src/cfa-cpp as not in lib until after install
 
-MAINTAINERCLEANFILES = builtins.c builtins.cf extras.cf ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
+MAINTAINERCLEANFILES = builtins.c builtins.cf extras.cf bootloader.c ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
Index: src/prelude/Makefile.in
===================================================================
--- src/prelude/Makefile.in	(revision 66f8528e75e91260ef63ddd93ec58ba5e42ae5dc)
+++ src/prelude/Makefile.in	(revision 7cc2c8de391b81c66900242eeeedd230a3f06b5f)
@@ -210,7 +210,7 @@
 # put into lib for now
 cfalibdir = ${libdir}
-cfalib_DATA = builtins.cf extras.cf prelude.cf
+cfalib_DATA = builtins.cf extras.cf prelude.cf bootloader.c
 noinst_DATA = ../libcfa/libcfa-prelude.c
-MAINTAINERCLEANFILES = builtins.c builtins.cf extras.cf ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
+MAINTAINERCLEANFILES = builtins.c builtins.cf extras.cf bootloader.c ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
 all: all-am
 
@@ -441,4 +441,7 @@
 	${AM_V_GEN}${abs_top_srcdir}/src/driver/cfa-cpp -l prelude.cf $@  # use src/cfa-cpp as not in lib until after install
 
+bootloader.c : bootloader.cf extras.cf builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
+	${AM_V_GEN}${abs_top_srcdir}/src/driver/cfa-cpp -tpm bootloader.cf $@  # use src/cfa-cpp as not in lib until after install
+
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
Index: src/prelude/bootloader.cf
===================================================================
--- src/prelude/bootloader.cf	(revision 7cc2c8de391b81c66900242eeeedd230a3f06b5f)
+++ src/prelude/bootloader.cf	(revision 7cc2c8de391b81c66900242eeeedd230a3f06b5f)
@@ -0,0 +1,5 @@
+extern int invoke_main(int argc, char* argv[], char* envp[]);
+
+int main(int argc, char* argv[], char* envp[]) {
+	return invoke_main(argc, argv, envp);
+}
