2.22 System construction


2.22.1 Dictionary

2.22.1.1 Extensions

See also System building.

Function: compile-file input-file &key output-file verbose print external-format target system-p load c-file h-file data-file

Additional options for compile-file include:

:system-p

Create an object file (.o)

:target

Cross 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.

:load

Load 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-file

Boolean flags controlling whether to keep temporary files created by the compiler

Function: compile-file-pathname input-file &key output-file type system-p

Additional options for compile-file-pathname include:

:type

Specify 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-p

If no type is supplied, default to :object type instead of :fasl

Macro: with-compilation-unit (&key override target) &body body

Additional options for with-compilation-unit include:

:target

Cross 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.

2.22.2 C Reference

2.22.2.1 ANSI Dictionary

Common Lisp and C equivalence

Lisp symbolC function
compile-file[Only in Common Lisp]
compile-file-pathname[Only in Common Lisp]
loadcl_object cl_load(cl_narg narg, cl_object pathname, ...)
providecl_object cl_provide(cl_object module_name)
requirecl_object cl_require(cl_narg narg, cl_object module_name, ...)