See also System building.
Additional options for compile-file include:
:system-pCreate an object file (.o)
:targetCross compilation target, see Cross compilation. Can be either the
target information obtained by calling c:read-target-info or a
pathname pointing to the installation directory of the target ECL for
which to compile.
:loadLoad the output file after compilation. If a :target argument is
given alongside :load, load the source file in the target
environment.
:c-file, :h-file, :data-fileBoolean flags controlling whether to keep temporary files created by the compiler
Additional options for compile-file-pathname include:
:typeSpecify the type of output file. One of :fasl (default, alias :fas), :c, :h, :data, :object, :program, :shared-library (alias :dll), :static-library (alias :library, :lib), :precompiled-header or :import-library (MSVC only)
:system-pIf no type is supplied, default to :object type instead of :fasl
Additional options for with-compilation-unit include:
:targetCross compilation target, see Cross compilation. Any compilation operation produces outputs for the specified target system. This includes compile-file, disassemble and all ECL specific functions described in the section on Compiling with ECL. The only exception is compile which continues to work as usual.
Common Lisp and C equivalence
| Lisp symbol | C function |
|---|---|
| compile-file | [Only in Common Lisp] |
| compile-file-pathname | [Only in Common Lisp] |
| load | cl_object cl_load(cl_narg narg, cl_object pathname, ...) |
| provide | cl_object cl_provide(cl_object module_name) |
| require | cl_object cl_require(cl_narg narg, cl_object module_name, ...) |