Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions clang/docs/ClangStaticAnalyzer.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ Clang Static Analyzer
The Clang Static Analyzer is a source code analysis tool that finds bugs in C, C++, and Objective-C programs.
It implements *path-sensitive*, *inter-procedural analysis* based on *symbolic execution* technique.

This is the Static Analyzer documentation page.
The Static Analyzer is a part of Clang; for downloading and installing Clang visit the `LLVM releases page <https://releases.llvm.org/>`_.

See the `Official Tool Page <https://clang-analyzer.llvm.org/>`_.
This is the documentation page of the Static Analyzer; there is also an old `Official Tool Page <https://clang-analyzer.llvm.org/>`_ which provides a short overview of features and limitations.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is scan-build and scan-view mentioned somewhere?
I can see that they were in the dropped hunks.

Copy link
Contributor Author

@NagyDonat NagyDonat Nov 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The use of scan-build is described on the Command Line Usage page -- it would be probably nice to extend that page by mentioning that scan-build is also available as a part of the Clang project. (By the way, is it within clang-tools-extra or the core part of the project? I admit that I never used it, because I use the analyzer through CodeChecker.)

I don't know anything about scan-view, I never heard about it previously and (according to a quick search) it is not described elsewhere in the "how to actually use it" side of the documentation. I only found documentation for it on this old debian manpage from 2020. Is this tool still relevant and useful?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think packaging depends on the vendor. It might be different on Debian than on Arch for example.
I have no idea how these are packaged, as I always just used my own.
IMO docs are only helpful if they are up to date. Also, I believe that having a quick setup for a common vendor is useful, such as for Debian.


.. toctree::
:caption: Table of Contents
Expand Down
1 change: 0 additions & 1 deletion clang/docs/analyzer/user-docs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ Contents:
.. toctree::
:maxdepth: 2

user-docs/Installation
user-docs/CommandLineUsage
user-docs/Options
user-docs/UsingWithXCode
Expand Down
37 changes: 3 additions & 34 deletions clang/docs/analyzer/user-docs/Installation.rst
Original file line number Diff line number Diff line change
@@ -1,37 +1,6 @@
:orphan:

Obtaining the Static Analyzer
=============================

This page describes how to download and install the analyzer. Once the analyzer is installed, follow the :doc:`CommandLineUsage` on using the command line to get started analyzing your code.

.. contents::
:local:


Building the Analyzer from Source
---------------------------------

Currently there are no officially supported binary distributions for the static analyzer.
You must build Clang and LLVM manually.
To do so, please follow the instructions for `building Clang from source code <https://clang.llvm.org/get_started.html#build>`_.

Once the Clang is built, you need to add the location of the ``clang`` binary and the locations of the command line utilities (`CodeChecker` or ``scan-build`` and ``scan-view``) to you PATH for :doc:`CommandLineUsage`.

[Legacy] Packaged Builds (Mac OS X)
-----------------------------------

Semi-regular pre-built binaries of the analyzer used to be available on Mac OS X. These were built to run on OS X 10.7 and later.

For older builds for MacOS visit https://clang-analyzer.llvm.org/release_notes.html.

Packaged builds for other platforms may eventually be provided, but we need volunteers who are willing to help provide such regular builds. If you wish to help contribute regular builds of the analyzer on other platforms, please get in touch via `LLVM Discourse <https://discourse.llvm.org/>`_.

[Legacy] Using Packaged Builds
------------------------------

To use the legacy package builds, simply unpack it anywhere. If the build archive has the name **``checker-XXX.tar.bz2``** then the archive will expand to a directory called **``checker-XXX``**. You do not need to place this directory or the contents of this directory in any special place. Uninstalling the analyzer is as simple as deleting this directory.

Most of the files in the **``checker-XXX``** directory will be supporting files for the analyzer that you can simply ignore. Most users will only care about two files, which are located at the top of the **``checker-XXX``** directory:

* **scan-build**: ``scan-build`` is the high-level command line utility for running the analyzer
* **scan-view**: ``scan-view`` a companion command line utility to ``scan-build``, ``scan-view`` is used to view analysis results generated by ``scan-build``. There is an option that one can pass to ``scan-build`` to cause ``scan-view`` to run as soon as it the analysis of a build completes

The Static Analyzer can be obtained as a part of Clang; for downloading and installing Clang visit the `LLVM releases page <https://releases.llvm.org/>`_. Once the analyzer is installed, follow the :doc:`CommandLineUsage` on using the command line to get started analyzing your code.
Loading