<!-- Creator : groff version 1.22.3 --> <!-- CreationDate: Thu Jun 7 16:35:59 2018 --> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta name="generator" content="groff -Thtml, see www.gnu.org"> <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> <meta name="Content-Style" content="text/css"> <style type="text/css"> p { margin-top: 0; margin-bottom: 0; vertical-align: top } pre { margin-top: 0; margin-bottom: 0; vertical-align: top } table { margin-top: 0; margin-bottom: 0; vertical-align: top } h1 { text-align: center } </style> <title>infer-run</title> </head> <body> <h1 align="center">infer-run</h1> <a href="#NAME">NAME</a><br> <a href="#SYNOPSIS">SYNOPSIS</a><br> <a href="#DESCRIPTION">DESCRIPTION</a><br> <a href="#OPTIONS">OPTIONS</a><br> <a href="#BUCK FLAVORS OPTIONS">BUCK FLAVORS OPTIONS</a><br> <a href="#CLANG OPTIONS">CLANG OPTIONS</a><br> <a href="#ENVIRONMENT">ENVIRONMENT</a><br> <a href="#FILES">FILES</a><br> <a href="#SEE ALSO">SEE ALSO</a><br> <hr> <h2>NAME <a name="NAME"></a> </h2> <p style="margin-left:11%; margin-top: 1em">infer-run - capture source files, analyze, and report</p> <h2>SYNOPSIS <a name="SYNOPSIS"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>infer run</b> <i>[options]</i> <b><br> infer</b> <i>[options]</i> <b>--</b> <i>compile command</i></p> <h2>DESCRIPTION <a name="DESCRIPTION"></a> </h2> <p style="margin-left:11%; margin-top: 1em">Calling "<b>infer run</b> <i>[options]</i>" is equivalent to performing the following sequence of commands:</p> <p style="margin-left:11%; margin-top: 1em"><b>infer capture</b> <i>[options]</i> <b><br> infer analyze</b> <i>[options]</i></p> <h2>OPTIONS <a name="OPTIONS"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><i><b>--analyzer</b></i>,<b>-a</b> <i>{ checkers | infer | capture | compile | crashcontext | <br> linters }</i></p> <p style="margin-left:17%;">Specify which analyzer to run (only one at a time is supported):</p> <p style="margin-left:11%;">- <b>biabduction</b>: run the bi-abduction based checker only, in <br> particular to check for memory errors <br> - <b>checkers</b>: run the default checkers, including the bi-abduction <br> based checker for memory errors (default) <br> - <b>infer</b>: alias for <b>biabduction</b> <br> - <b>linters</b>: run linters based on the ast only (clang only, <br> activated by default) <br> - <b>capture</b>: similar to specifying the <b>capture</b> subcommand <br> (DEPRECATED) <br> - <b>compile</b>: similar to specifying the <b>compile</b> subcommand <br> (DEPRECATED) <br> - <b>crashcontext</b>: experimental (see <b>--crashcontext</b>) <b><br> --<analyzer>-blacklist-files-containing</b> <i>+string</i></p> <p style="margin-left:17%;">blacklist files containing the specified string for the given analyzer (see <b>--analyzer</b> for valid values)</p> <p style="margin-left:11%;"><b>--<analyzer>-blacklist-path-regex</b> <i>+path_regex</i></p> <p style="margin-left:17%;">blacklist the analysis of files whose relative path matches the specified OCaml-style regex (to whitelist: <b>--<analyzer>-whitelist-path-regex</b>)</p> <p style="margin-left:11%;"><b>--<analyzer>-suppress-errors</b> <i>+error_name</i></p> <p style="margin-left:17%;">do not report a type of errors</p> <p style="margin-left:11%;"><b>--debug</b>,<b>-g</b></p> <p style="margin-left:17%;">Activates: Debug mode (also sets <b>--debug-level 2</b>, <b>--developer-mode</b>, <b>--no-filtering</b>, <b>--print-buckets</b>, <b>--print-types</b>, <b>--reports-include-ml-loc</b>, <b>--no-only-cheap-debug</b>, <b>--trace-error</b>, <b>--write-dotty</b>, <b>--write-html</b>) (Conversely: <b>--no-debug</b> | <b>-G</b>)</p> <p style="margin-left:11%;"><b>--debug-level</b> <i>level</i></p> <p style="margin-left:17%;">Debug level (sets <b>--bo-debug</b> <i>level</i>, <b>--debug-level-analysis</b> <i>level</i>, <b>--debug-level-capture</b> <i>level</i>, <b>--debug-level-linters</b> <i>level</i>):</p> <p style="margin-left:11%;">- 0: only basic debugging enabled <br> - 1: verbose debugging enabled <br> - 2: very verbose debugging enabled <b><br> --debug-level-analysis</b> <i>int</i></p> <p style="margin-left:17%;">Debug level for the analysis. See <b>--debug-level</b> for accepted values. (default: <i>0</i>)</p> <p style="margin-left:11%;"><b>--debug-level-capture</b> <i>int</i></p> <p style="margin-left:17%;">Debug level for the capture. See <b>--debug-level</b> for accepted values. (default: <i>0</i>)</p> <p style="margin-left:11%;"><b>--debug-level-linters</b> <i>int</i></p> <p style="margin-left:17%;">Debug level for the linters. See <b>--debug-level</b> for accepted values. (default: <i>0</i>)</p> <p style="margin-left:11%;"><b>--fail-on-issue</b></p> <p style="margin-left:17%;">Activates: Exit with error code 2 if Infer found something to report (Conversely: <b>--no-fail-on-issue</b>)</p> <p style="margin-left:11%;"><b>--filter-report</b> <i>+string</i></p> <p style="margin-left:17%;">Specify a filter for issues to report. If multiple filters are specified, they are applied in the order in which they are specified. Each filter is applied to each issue detected, and only issues which are accepted by all filters are reported. Each filter is of the form: ’<issue_type_regex>:<filename_regex>:<reason_string>’. The first two components are OCaml Str regular expressions, with an optional ’!’ character prefix. If a regex has a ’!’ prefix, the polarity is inverted, and the filter becomes a "blacklist" instead of a "whitelist". Each filter is interpreted as an implication: an issue matches if it does not match the ’issue_type_regex’ or if it does match the ’filename_regex’. The filenames that are tested by the regex are relative to the ’--project-root’ directory. The ’<reason_string>’ is a non-empty string used to explain why the issue was filtered.</p> <p style="margin-left:11%;"><b>--force-delete-results-dir</b></p> <p style="margin-left:17%;">Activates: Do not refuse to delete the results directory if it doesn't look like an infer results directory. (Conversely: <b>--no-force-delete-results-dir</b>)</p> <p style="margin-left:11%;"><b>--force-integration</b> <i>command</i></p> <p style="margin-left:17%;">Proceed as if the first argument after <b>--</b> was <i>command</i>. Possible values: <i>analyze</i>, <i>ant</i>, <i>buck</i>, <i>gradle</i>, <i>gradlew</i>, <i>java</i>, <i>javac</i>, <i>cc</i>, <i>clang</i>, <i>gcc</i>, <i>clang++</i>, <i>c++</i>, <i>g++</i>, <i>make</i>, <i>configure</i>, <i>cmake</i>, <i>waf</i>, <i>mvn</i>, <i>mvnw</i>, <i>ndk-build</i>, <i>python</i>, <i>xcodebuild</i>.</p> <p style="margin-left:11%;"><b>--help</b></p> <p style="margin-left:17%;">Show this manual</p> <p style="margin-left:11%;"><b>--help-format</b> <i>{ auto | groff | pager | plain }</i></p> <p style="margin-left:17%;">Show this help in the specified format. <b>auto</b> sets the format to <b>plain</b> if the environment variable <b>TERM</b> is "dumb" or undefined, and to <b>pager</b> otherwise. (default: <i>auto</i>)</p> <p style="margin-left:11%;"><b>--help-full</b></p> <p style="margin-left:17%;">Show this manual with all internal options in the INTERNAL OPTIONS section</p> <p style="margin-left:11%;"><b>--log-events</b></p> <p style="margin-left:17%;">Activates: Turn on the feature that logs events in a machine-readable format (Conversely: <b>--no-log-events</b>)</p> <p style="margin-left:11%;"><b>--pmd-xml</b></p> <p style="margin-left:17%;">Activates: Output issues in (PMD) XML format (Conversely: <b>--no-pmd-xml</b>)</p> <p style="margin-left:11%;"><b>--print-log-identifier</b></p> <p style="margin-left:17%;">Activates: Print the unique identifier that is common to all logged events (Conversely: <b>--no-print-log-identifier</b>)</p> <p style="margin-left:11%;"><b>--print-logs</b></p> <p style="margin-left:17%;">Activates: Also log messages to stdout and stderr (Conversely: <b>--no-print-logs</b>)</p> <p style="margin-left:11%;"><b>--no-progress-bar</b>,<b>-P</b></p> <p style="margin-left:17%;">Deactivates: Show a progress bar (Conversely: <b>--progress-bar</b> | <b>-p</b>)</p> <p style="margin-left:11%;"><b>--project-root</b>,<b>-C</b> <i>dir</i></p> <p style="margin-left:17%;">Specify the root directory of the project (default: <i>/home/jul/infer.fb</i>)</p> <p style="margin-left:11%;"><b>--no-report</b></p> <p style="margin-left:17%;">Deactivates: Run the reporting phase once the analysis has completed (Conversely: <b>--report</b>)</p> <p style="margin-left:11%;"><b>--report-hook</b> <i>script</i></p> <p style="margin-left:17%;">Specify a script to be executed after the analysis results are written. This script will be passed, <b>--issues-json</b>, <b>--issues-txt</b>, <b>--issues-xml</b>, <b>--project-root</b>, and <b>--results-dir</b>. (default: <i>/home/jul/infer.fb/infer/bin/../lib/python/report.py</i>)</p> <p style="margin-left:11%;"><b>--results-dir</b>,<b>-o</b> <i>dir</i></p> <p style="margin-left:17%;">Write results and internal files in the specified directory (default: <i>/home/jul/infer.fb/infer-out</i>)</p> <p style="margin-left:11%;"><b>--skip-analysis-in-path</b> <i>+path_prefix_OCaml_regex</i></p> <p style="margin-left:17%;">Ignore files whose path matches the given prefix (can be specified multiple times)</p> <p style="margin-left:11%;"><b>--version</b></p> <p style="margin-left:17%;">Print version information and exit</p> <p style="margin-left:11%;"><b>--version-json</b></p> <p style="margin-left:17%;">Print version information in json format and exit</p> <table width="100%" border="0" rules="none" frame="void" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="11%"></td> <td width="3%"> <p><b>--</b></p></td> <td width="3%"></td> <td width="83%"> <p>Stop argument processing, use remaining arguments as a build command</p></td></tr> </table> <h2>BUCK FLAVORS OPTIONS <a name="BUCK FLAVORS OPTIONS"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>--buck-blacklist</b> <i>regex</i></p> <p style="margin-left:17%;">Skip analysis of files matched by the specified regular expression</p> <h2>CLANG OPTIONS <a name="CLANG OPTIONS"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>--compute-analytics</b></p> <p style="margin-left:17%;">Activates: Emit analytics as info-level issues, like component kit line count and component kit file cyclomatic complexity (Conversely: <b>--no-compute-analytics</b>)</p> <h2>ENVIRONMENT <a name="ENVIRONMENT"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>INFER_ARGS</b>, <b>INFERCONFIG</b>, <b>INFER_STRICT_MODE</b></p> <p style="margin-left:17%;">See the ENVIRONMENT section in the manual of <b>infer</b>(1).</p> <h2>FILES <a name="FILES"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>.inferconfig</b></p> <p style="margin-left:17%;">See the FILES section in the manual of <b>infer</b>(1).</p> <h2>SEE ALSO <a name="SEE ALSO"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>infer-analyze</b>(1), <b>infer-capture</b>(1), <b>infer-report</b>(1)</p> <hr> </body> </html>