I tried your algorithm with every combination with and without --enable-debug. All failed. I did, however, get different errors. For example, giving a partial run through your steps, I get the following different error:
...
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_typecase.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_assert.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_dl.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_rm.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_autoload.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_fle.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_setf.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_arraylib.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_seq.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_seqlib.lsp
loading /home/blake/Backup/gcl/gcl/unixport/../lsp/gcl_mislib.lsp
UNDEFINED-FUNCTION NIL LET NAME CERROR
Lisp initialization failed.
rm -f tmp_image
rm raw_pre_gcl pre_init.lsp post_init.lsp
make[1]: Leaving directory `/home/blake/Backup/gcl/gcl/unixport'
cd unixport && echo '(time (let ((*features* (cons :pre-gcl *features*)))(load "boot.lisp")))' | ./saved_pre_gcl
/bin/sh: 1: ./saved_pre_gcl: not found
make: *** [unixport/saved_pre_gcl] Error 127
address@hidden ~/Backup/gcl/gcl $