__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.217.121: ~ $
<!DOCTYPE html>

<html lang="en" data-content_root="../">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    <title>Building Linux with Clang/LLVM &#8212; The Linux Kernel  documentation</title>
    <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=fa44fd50" />
    <link rel="stylesheet" type="text/css" href="../_static/alabaster.css?v=3918102e" />
    <script src="../_static/documentation_options.js?v=5929fcd5"></script>
    <script src="../_static/doctools.js?v=9bcbadda"></script>
    <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="DWARF module versioning" href="gendwarfksyms.html" />
    <link rel="prev" title="GCC plugin infrastructure" href="gcc-plugins.html" />
   
  <link rel="stylesheet" href="../_static/custom.css" type="text/css" />
  

  
  

  </head><body>
  <div class="document">
    
      <div class="sphinxsidebar" role="navigation" aria-label="Main">
        <div class="sphinxsidebarwrapper">
            <p class="logo"><a href="../index.html">
              <img class="logo" src="../_static/logo.svg" alt="Logo of The Linux Kernel"/>
            </a></p>
<h1 class="logo"><a href="../index.html">The Linux Kernel</a></h1>



<p class="blurb">6.18.50</p>







<search id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>
    </div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script>


<p>
<h3 class="kernel-toc-contents">Contents</h3>
<input type="checkbox" class="kernel-toc-toggle" id = "kernel-toc-toggle" checked>
<label class="kernel-toc-title" for="kernel-toc-toggle"></label>

<div class="kerneltoc" id="kerneltoc">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../process/development-process.html">Development process</a></li>
<li class="toctree-l1"><a class="reference internal" href="../process/submitting-patches.html">Submitting patches</a></li>
<li class="toctree-l1"><a class="reference internal" href="../process/code-of-conduct.html">Code of conduct</a></li>
<li class="toctree-l1"><a class="reference internal" href="../maintainer/index.html">Maintainer handbook</a></li>
<li class="toctree-l1"><a class="reference internal" href="../process/index.html">All development-process docs</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../core-api/index.html">Core API</a></li>
<li class="toctree-l1"><a class="reference internal" href="../driver-api/index.html">Driver APIs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../subsystem-apis.html">Subsystems</a></li>
<li class="toctree-l1"><a class="reference internal" href="../locking/index.html">Locking</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../process/license-rules.html">Licensing rules</a></li>
<li class="toctree-l1"><a class="reference internal" href="../doc-guide/index.html">Writing documentation</a></li>
<li class="toctree-l1"><a class="reference internal" href="../dev-tools/index.html">Development tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../dev-tools/testing-overview.html">Testing guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../kernel-hacking/index.html">Hacking guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../trace/index.html">Tracing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../fault-injection/index.html">Fault injection</a></li>
<li class="toctree-l1"><a class="reference internal" href="../livepatch/index.html">Livepatching</a></li>
<li class="toctree-l1"><a class="reference internal" href="../rust/index.html">Rust</a></li>
</ul>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../admin-guide/index.html">Administration</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">Build system</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="kconfig-language.html">Kconfig Language</a></li>
<li class="toctree-l2"><a class="reference internal" href="kconfig-macro-language.html">Kconfig macro language</a></li>
<li class="toctree-l2"><a class="reference internal" href="kbuild.html">Kbuild</a></li>
<li class="toctree-l2"><a class="reference internal" href="kconfig.html">Configuration targets and editors</a></li>
<li class="toctree-l2"><a class="reference internal" href="makefiles.html">Linux Kernel Makefiles</a></li>
<li class="toctree-l2"><a class="reference internal" href="modules.html">Building External Modules</a></li>
<li class="toctree-l2"><a class="reference internal" href="headers_install.html">Exporting kernel headers for use by userspace</a></li>
<li class="toctree-l2"><a class="reference internal" href="issues.html">Recursion issues</a></li>
<li class="toctree-l2"><a class="reference internal" href="reproducible-builds.html">Reproducible builds</a></li>
<li class="toctree-l2"><a class="reference internal" href="gcc-plugins.html">GCC plugin infrastructure</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Building Linux with Clang/LLVM</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#about">About</a></li>
<li class="toctree-l3"><a class="reference internal" href="#building-with-llvm">Building with LLVM</a></li>
<li class="toctree-l3"><a class="reference internal" href="#the-llvm-argument">The LLVM= argument</a></li>
<li class="toctree-l3"><a class="reference internal" href="#cross-compiling">Cross Compiling</a></li>
<li class="toctree-l3"><a class="reference internal" href="#the-llvm-ias-argument">The LLVM_IAS= argument</a></li>
<li class="toctree-l3"><a class="reference internal" href="#ccache">Ccache</a></li>
<li class="toctree-l3"><a class="reference internal" href="#supported-architectures">Supported Architectures</a></li>
<li class="toctree-l3"><a class="reference internal" href="#getting-help">Getting Help</a></li>
<li class="toctree-l3"><a class="reference internal" href="#getting-llvm">Getting LLVM</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="gendwarfksyms.html">DWARF module versioning</a></li>
<li class="toctree-l2"><a class="reference internal" href="bash-completion.html">Bash completion for Kbuild</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../admin-guide/reporting-issues.html">Reporting issues</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tools/index.html">Userspace tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../userspace-api/index.html">Userspace API</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../firmware-guide/index.html">Firmware</a></li>
<li class="toctree-l1"><a class="reference internal" href="../devicetree/index.html">Firmware and Devicetree</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../arch/index.html">CPU architectures</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../staging/index.html">Unsorted documentation</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../translations/index.html">Translations</a></li>
</ul>

</div>

<script type="text/javascript"> <!--
  var sbar = document.getElementsByClassName("sphinxsidebar")[0];
  let currents = document.getElementsByClassName("current")
  if (currents.length) {
    sbar.scrollTop = currents[currents.length - 1].offsetTop;
  }
  --> </script>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../_sources/kbuild/llvm.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
        </div>
      </div>
      <div class="documentwrapper">
        <div class="bodywrapper">
          

          <div class="body" role="main">
            
  




<div class="language-selection">
English

<ul>

<li><a href="../translations/zh_CN/kbuild/llvm.html">Chinese (Simplified)</a></li>

</ul>
</div>
<section id="building-linux-with-clang-llvm">
<span id="kbuild-llvm"></span><h1>Building Linux with Clang/LLVM<a class="headerlink" href="#building-linux-with-clang-llvm" title="Link to this heading">¶</a></h1>
<p>This document covers how to build the Linux kernel with Clang and LLVM
utilities.</p>
<section id="about">
<h2>About<a class="headerlink" href="#about" title="Link to this heading">¶</a></h2>
<p>The Linux kernel has always traditionally been compiled with GNU toolchains
such as GCC and binutils. Ongoing work has allowed for <a class="reference external" href="https://clang.llvm.org/">Clang</a> and <a class="reference external" href="https://llvm.org/">LLVM</a> utilities to be
used as viable substitutes. Distributions such as <a class="reference external" href="https://www.android.com/">Android</a>, <a class="reference external" href="https://www.chromium.org/chromium-os">ChromeOS</a>, <a class="reference external" href="https://www.openmandriva.org/">OpenMandriva</a>, and <a class="reference external" href="https://chimera-linux.org/">Chimera Linux</a> use Clang built kernels. Google’s and Meta’s
datacenter fleets also run kernels built with Clang.</p>
<p><a class="reference external" href="https://www.aosabook.org/en/llvm.html">LLVM is a collection of toolchain components implemented in terms of C++
objects</a>. Clang is a front-end to LLVM
that supports C and the GNU C extensions required by the kernel, and is
pronounced “klang,” not “see-lang.”</p>
</section>
<section id="building-with-llvm">
<h2>Building with LLVM<a class="headerlink" href="#building-with-llvm" title="Link to this heading">¶</a></h2>
<p>Invoke <code class="docutils literal notranslate"><span class="pre">make</span></code> via:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>make LLVM=1
</pre></div>
</div>
<p>to compile for the host target. For cross compiling:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>make LLVM=1 ARCH=arm64
</pre></div>
</div>
</section>
<section id="the-llvm-argument">
<h2>The LLVM= argument<a class="headerlink" href="#the-llvm-argument" title="Link to this heading">¶</a></h2>
<p>LLVM has substitutes for GNU binutils utilities. They can be enabled
individually. The full list of supported make variables:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>make CC=clang LD=ld.lld AR=llvm-ar NM=llvm-nm STRIP=llvm-strip \
  OBJCOPY=llvm-objcopy OBJDUMP=llvm-objdump READELF=llvm-readelf \
  HOSTCC=clang HOSTCXX=clang++ HOSTAR=llvm-ar HOSTLD=ld.lld
</pre></div>
</div>
<p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code> expands to the above.</p>
<p>If your LLVM tools are not available in your PATH, you can supply their
location using the LLVM variable with a trailing slash:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>make LLVM=/path/to/llvm/
</pre></div>
</div>
<p>which will use <code class="docutils literal notranslate"><span class="pre">/path/to/llvm/clang</span></code>, <code class="docutils literal notranslate"><span class="pre">/path/to/llvm/ld.lld</span></code>, etc. The
following may also be used:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>PATH=/path/to/llvm:$PATH make LLVM=1
</pre></div>
</div>
<p>If your LLVM tools have a version suffix and you want to test with that
explicit version rather than the unsuffixed executables like <code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code>, you
can pass the suffix using the <code class="docutils literal notranslate"><span class="pre">LLVM</span></code> variable:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>make LLVM=-14
</pre></div>
</div>
<p>which will use <code class="docutils literal notranslate"><span class="pre">clang-14</span></code>, <code class="docutils literal notranslate"><span class="pre">ld.lld-14</span></code>, etc.</p>
<p>To support combinations of out of tree paths with version suffixes, we
recommend:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>PATH=/path/to/llvm/:$PATH make LLVM=-14
</pre></div>
</div>
<p><code class="docutils literal notranslate"><span class="pre">LLVM=0</span></code> is not the same as omitting <code class="docutils literal notranslate"><span class="pre">LLVM</span></code> altogether, it will behave like
<code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code>. If you only wish to use certain LLVM utilities, use their
respective make variables.</p>
<p>The same value used for <code class="docutils literal notranslate"><span class="pre">LLVM=</span></code> should be set for each invocation of <code class="docutils literal notranslate"><span class="pre">make</span></code>
if configuring and building via distinct commands. <code class="docutils literal notranslate"><span class="pre">LLVM=</span></code> should also be set
as an environment variable when running scripts that will eventually run
<code class="docutils literal notranslate"><span class="pre">make</span></code>.</p>
</section>
<section id="cross-compiling">
<h2>Cross Compiling<a class="headerlink" href="#cross-compiling" title="Link to this heading">¶</a></h2>
<p>A single Clang compiler binary (and corresponding LLVM utilities) will
typically contain all supported back ends, which can help simplify cross
compiling especially when <code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code> is used. If you use only LLVM tools,
<code class="docutils literal notranslate"><span class="pre">CROSS_COMPILE</span></code> or target-triple-prefixes become unnecessary. Example:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>make LLVM=1 ARCH=arm64
</pre></div>
</div>
<p>As an example of mixing LLVM and GNU utilities, for a target like <code class="docutils literal notranslate"><span class="pre">ARCH=s390</span></code>
which does not yet have <code class="docutils literal notranslate"><span class="pre">ld.lld</span></code> or <code class="docutils literal notranslate"><span class="pre">llvm-objcopy</span></code> support, you could
invoke <code class="docutils literal notranslate"><span class="pre">make</span></code> via:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>make LLVM=1 ARCH=s390 LD=s390x-linux-gnu-ld.bfd \
  OBJCOPY=s390x-linux-gnu-objcopy
</pre></div>
</div>
<p>This example will invoke <code class="docutils literal notranslate"><span class="pre">s390x-linux-gnu-ld.bfd</span></code> as the linker and
<code class="docutils literal notranslate"><span class="pre">s390x-linux-gnu-objcopy</span></code>, so ensure those are reachable in your <code class="docutils literal notranslate"><span class="pre">$PATH</span></code>.</p>
<p><code class="docutils literal notranslate"><span class="pre">CROSS_COMPILE</span></code> is not used to prefix the Clang compiler binary (or
corresponding LLVM utilities) as is the case for GNU utilities when <code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code>
is not set.</p>
</section>
<section id="the-llvm-ias-argument">
<h2>The LLVM_IAS= argument<a class="headerlink" href="#the-llvm-ias-argument" title="Link to this heading">¶</a></h2>
<p>Clang can assemble assembler code. You can pass <code class="docutils literal notranslate"><span class="pre">LLVM_IAS=0</span></code> to disable this
behavior and have Clang invoke the corresponding non-integrated assembler
instead. Example:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>make LLVM=1 LLVM_IAS=0
</pre></div>
</div>
<p><code class="docutils literal notranslate"><span class="pre">CROSS_COMPILE</span></code> is necessary when cross compiling and <code class="docutils literal notranslate"><span class="pre">LLVM_IAS=0</span></code>
is used in order to set <code class="docutils literal notranslate"><span class="pre">--prefix=</span></code> for the compiler to find the
corresponding non-integrated assembler (typically, you don’t want to use the
system assembler when targeting another architecture). Example:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>make LLVM=1 ARCH=arm LLVM_IAS=0 CROSS_COMPILE=arm-linux-gnueabi-
</pre></div>
</div>
</section>
<section id="ccache">
<h2>Ccache<a class="headerlink" href="#ccache" title="Link to this heading">¶</a></h2>
<p><code class="docutils literal notranslate"><span class="pre">ccache</span></code> can be used with <code class="docutils literal notranslate"><span class="pre">clang</span></code> to improve subsequent builds, (though
<a class="reference external" href="kbuild.html#kbuild-build-timestamp">KBUILD_BUILD_TIMESTAMP</a> should be set to a deterministic value between builds
in order to avoid 100% cache misses, see <a class="reference external" href="reproducible-builds.html#timestamps">Reproducible_builds</a> for more info):</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>KBUILD_BUILD_TIMESTAMP=&#39;&#39; make LLVM=1 CC=&quot;ccache clang&quot;
</pre></div>
</div>
</section>
<section id="supported-architectures">
<h2>Supported Architectures<a class="headerlink" href="#supported-architectures" title="Link to this heading">¶</a></h2>
<p>LLVM does not target all of the architectures that Linux supports and
just because a target is supported in LLVM does not mean that the kernel
will build or work without any issues. Below is a general summary of
architectures that currently work with <code class="docutils literal notranslate"><span class="pre">CC=clang</span></code> or <code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code>. Level
of support corresponds to “S” values in the MAINTAINERS files. If an
architecture is not present, it either means that LLVM does not target
it or there are known issues. Using the latest stable version of LLVM or
even the development tree will generally yield the best results.
An architecture’s <code class="docutils literal notranslate"><span class="pre">defconfig</span></code> is generally expected to work well,
certain configurations may have problems that have not been uncovered
yet. Bug reports are always welcome at the issue tracker below!</p>
<table class="docutils align-default">
<colgroup>
<col style="width: 33.3%" />
<col style="width: 33.3%" />
<col style="width: 33.3%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>Architecture</p></th>
<th class="head"><p>Level of support</p></th>
<th class="head"><p><code class="docutils literal notranslate"><span class="pre">make</span></code> command</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>arm</p></td>
<td><p>Supported</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>arm64</p></td>
<td><p>Supported</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code></p></td>
</tr>
<tr class="row-even"><td><p>hexagon</p></td>
<td><p>Maintained</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>loongarch</p></td>
<td><p>Maintained</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code></p></td>
</tr>
<tr class="row-even"><td><p>mips</p></td>
<td><p>Maintained</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>powerpc</p></td>
<td><p>Maintained</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code></p></td>
</tr>
<tr class="row-even"><td><p>riscv</p></td>
<td><p>Supported</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>s390</p></td>
<td><p>Maintained</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code> (LLVM &gt;= 18.1.0), <code class="docutils literal notranslate"><span class="pre">CC=clang</span></code> (LLVM &lt; 18.1.0)</p></td>
</tr>
<tr class="row-even"><td><p>sparc (sparc64 only)</p></td>
<td><p>Maintained</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">CC=clang</span> <span class="pre">LLVM_IAS=0</span></code> (LLVM &gt;= 20)</p></td>
</tr>
<tr class="row-odd"><td><p>um (User Mode)</p></td>
<td><p>Maintained</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code></p></td>
</tr>
<tr class="row-even"><td><p>x86</p></td>
<td><p>Supported</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LLVM=1</span></code></p></td>
</tr>
</tbody>
</table>
</section>
<section id="getting-help">
<h2>Getting Help<a class="headerlink" href="#getting-help" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://clangbuiltlinux.github.io/">Website</a></p></li>
<li><p><a class="reference external" href="https://lore.kernel.org/llvm/">Mailing List</a>: &lt;<a class="reference external" href="mailto:llvm&#37;&#52;&#48;lists&#46;linux&#46;dev">llvm<span>&#64;</span>lists<span>&#46;</span>linux<span>&#46;</span>dev</a>&gt;</p></li>
<li><p><a class="reference external" href="https://groups.google.com/g/clang-built-linux">Old Mailing List Archives</a></p></li>
<li><p><a class="reference external" href="https://github.com/ClangBuiltLinux/linux/issues">Issue Tracker</a></p></li>
<li><p>IRC: #clangbuiltlinux on irc.libera.chat</p></li>
<li><p><a class="reference external" href="https://t.me/ClangBuiltLinux">Telegram</a>: &#64;ClangBuiltLinux</p></li>
<li><p><a class="reference external" href="https://github.com/ClangBuiltLinux/linux/wiki">Wiki</a></p></li>
<li><p><a class="reference external" href="https://github.com/ClangBuiltLinux/linux/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22">Beginner Bugs</a></p></li>
</ul>
</section>
<section id="getting-llvm">
<span id="id1"></span><h2>Getting LLVM<a class="headerlink" href="#getting-llvm" title="Link to this heading">¶</a></h2>
<p>We provide prebuilt stable versions of LLVM on <a class="reference external" href="https://kernel.org/pub/tools/llvm/">kernel.org</a>. These have been optimized with profile
data for building Linux kernels, which should improve kernel build times
relative to other distributions of LLVM.</p>
<p>Below are links that may be useful for building LLVM from source or procuring
it through a distribution’s package manager.</p>
<ul class="simple">
<li><p><a class="reference external" href="https://releases.llvm.org/download.html">https://releases.llvm.org/download.html</a></p></li>
<li><p><a class="reference external" href="https://github.com/llvm/llvm-project">https://github.com/llvm/llvm-project</a></p></li>
<li><p><a class="reference external" href="https://llvm.org/docs/GettingStarted.html">https://llvm.org/docs/GettingStarted.html</a></p></li>
<li><p><a class="reference external" href="https://llvm.org/docs/CMake.html">https://llvm.org/docs/CMake.html</a></p></li>
<li><p><a class="reference external" href="https://apt.llvm.org/">https://apt.llvm.org/</a></p></li>
<li><p><a class="reference external" href="https://www.archlinux.org/packages/extra/x86_64/llvm/">https://www.archlinux.org/packages/extra/x86_64/llvm/</a></p></li>
<li><p><a class="reference external" href="https://github.com/ClangBuiltLinux/tc-build">https://github.com/ClangBuiltLinux/tc-build</a></p></li>
<li><p><a class="reference external" href="https://github.com/ClangBuiltLinux/linux/wiki/Building-Clang-from-source">https://github.com/ClangBuiltLinux/linux/wiki/Building-Clang-from-source</a></p></li>
<li><p><a class="reference external" href="https://android.googlesource.com/platform/prebuilts/clang/host/linux-x86/">https://android.googlesource.com/platform/prebuilts/clang/host/linux-x86/</a></p></li>
</ul>
</section>
</section>


          </div>
          
        </div>
      </div>
    <div class="clearer"></div>
  </div>
    <div class="footer">
      &#169;The kernel development community.
      
      |
      Powered by <a href="https://www.sphinx-doc.org/">Sphinx 8.1.3</a>
      &amp; <a href="https://alabaster.readthedocs.io">Alabaster 0.7.16</a>
      
      |
      <a href="../_sources/kbuild/llvm.rst.txt"
          rel="nofollow">Page source</a>
    </div>

    

    
  </body>
</html>

Filemanager

Name Type Size Permission Actions
bash-completion.html File 11.69 KB 0644
gcc-plugins.html File 17.38 KB 0644
gendwarfksyms.html File 28.28 KB 0644
headers_install.html File 10.51 KB 0644
index.html File 9.63 KB 0644
issues.html File 17.2 KB 0644
kbuild.html File 25.53 KB 0644
kconfig-language.html File 53.75 KB 0644
kconfig-macro-language.html File 19.39 KB 0644
kconfig.html File 23.01 KB 0644
llvm.html File 24.77 KB 0644
makefiles.html File 85.45 KB 0644
modules.html File 31.53 KB 0644
reproducible-builds.html File 17.56 KB 0644
Filemanager