Difference between revisions of "Clang"

From ArchWiki
Jump to: navigation, search
(Build packages with Clang: Added NB.)
(Remove sentence with clang-analyze pkg, because it is no longer nececary, this tool is built in clang pkg.)
Line 11: Line 11:
  
 
== Using the Static Analyzer ==
 
== Using the Static Analyzer ==
First install the {{Pkg|clang-analyzer}} package. To analyze a project, simply place the word {{ic|scan-build}} in front of your build command. For example:
+
To analyze a project, simply place the word {{ic|scan-build}} in front of your build command. For example:
 
  $ scan-build make
 
  $ scan-build make
  

Revision as of 13:53, 13 May 2016

Clang is a C/C++/Objective C compiler based on LLVM. It is distributed under the BSD Licence.

Installation

Install clang from the Official repositories.

Build packages with Clang

Add export CC=clang and (for C++) export CXX=clang++ to your /etc/makepkg.conf.

NB: For packages that specify GCC-specific build options, there may be build errors that require either editing the source package, the pkgbuild or commenting out the clang lines in makepkg.conf.

Using the Static Analyzer

To analyze a project, simply place the word scan-build in front of your build command. For example:

$ scan-build make
Tip: If your project is already compiled, scan-build won't rebuild and won't analyse it. To force recompilation and analysis, use -B switch:
$ scan-build make -B

It is also possible to analyze specific files:

$ scan-build gcc -c t1.c t2.c

References