You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
100 lines
3.1 KiB
100 lines
3.1 KiB
NAME
|
|
infer-compile - compile project from within the infer environment
|
|
|
|
SYNOPSIS
|
|
infer compile -- [compile command]
|
|
|
|
|
|
DESCRIPTION
|
|
Intercepts compilation commands similarly to infer-capture, but simply
|
|
execute these compilation commands and do not perform any translation
|
|
of the source files. This can be useful to configure build systems or
|
|
for debugging purposes.
|
|
|
|
|
|
|
|
OPTIONS
|
|
--debug,-g
|
|
Activates: Debug mode (also sets --debug-level 2,
|
|
--developer-mode, --print-buckets, --print-types,
|
|
--reports-include-ml-loc, --no-only-cheap-debug, --trace-error,
|
|
--write-dotty, --write-html) (Conversely: --no-debug | -G)
|
|
|
|
--debug-level level
|
|
Debug level (sets --bo-debug level, --debug-level-analysis level,
|
|
--debug-level-capture level, --debug-level-linters level):
|
|
- 0: only basic debugging enabled
|
|
- 1: verbose debugging enabled
|
|
- 2: very verbose debugging enabled
|
|
|
|
--debug-level-analysis int
|
|
Debug level for the analysis. See --debug-level for accepted
|
|
values.
|
|
|
|
--debug-level-capture int
|
|
Debug level for the capture. See --debug-level for accepted
|
|
values.
|
|
|
|
--debug-level-linters int
|
|
Debug level for the linters. See --debug-level for accepted
|
|
values.
|
|
|
|
--force-delete-results-dir
|
|
Activates: Do not refuse to delete the results directory if it
|
|
doesn't look like an infer results directory. (Conversely:
|
|
--no-force-delete-results-dir)
|
|
|
|
--help
|
|
Show this manual
|
|
|
|
--help-format { auto | groff | pager | plain }
|
|
Show this help in the specified format. auto sets the format to
|
|
plain if the environment variable TERM is "dumb" or undefined, and
|
|
to pager otherwise.
|
|
|
|
--help-full
|
|
Show this manual with all internal options in the INTERNAL OPTIONS
|
|
section
|
|
|
|
|
|
ENVIRONMENT
|
|
INFER_ARGS, INFERCONFIG, INFER_STRICT_MODE
|
|
See the ENVIRONMENT section in the manual of infer(1).
|
|
|
|
FILES
|
|
.inferconfig
|
|
See the FILES section in the manual of infer(1).
|
|
|
|
|
|
|
|
EXAMPLES
|
|
cmake(1) hardcodes the absolute paths to the compiler inside the
|
|
Makefiles it generates, which defeats the later capture of compilation
|
|
commands by infer. Thus, to capture a CMake project, one should
|
|
configure the project from within the infer build environment, for
|
|
instance:
|
|
|
|
mkdir build && cd build
|
|
infer compile -- cmake ..
|
|
infer capture -- make
|
|
|
|
The same solution can be used for projects whose "./configure" script
|
|
hardcodes the paths to the compilers, for instance:
|
|
|
|
infer compile -- ./configure
|
|
infer capture -- make
|
|
|
|
Another solution for CMake projects is to use CMake's compilation
|
|
databases, for instance:
|
|
|
|
mkdir build && cd build
|
|
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=1 ..
|
|
infer capture --compilation-database compile_commands.json
|
|
|
|
|
|
SEE ALSO
|
|
infer-capture(1)
|
|
|
|
|
|
|