[libc-commits] [libc] 2ef5b82 - [libc][docs] Update full host build docs (#97643)

via libc-commits libc-commits at lists.llvm.org
Wed Jul 3 16:29:22 PDT 2024


Author: Michael Jones
Date: 2024-07-03T16:29:19-07:00
New Revision: 2ef5b8227a3022654b5ef4bd7bafdc5b8750237f

URL: https://github.com/llvm/llvm-project/commit/2ef5b8227a3022654b5ef4bd7bafdc5b8750237f
DIFF: https://github.com/llvm/llvm-project/commit/2ef5b8227a3022654b5ef4bd7bafdc5b8750237f.diff

LOG: [libc][docs] Update full host build docs (#97643)

Add a note explaining how to fix the missing `asm` folder, as well as a
warning about installing without setting a sysroot.

Added: 
    

Modified: 
    libc/docs/full_host_build.rst

Removed: 
    


################################################################################
diff  --git a/libc/docs/full_host_build.rst b/libc/docs/full_host_build.rst
index 709ba70b22de4..4fb3072590f32 100644
--- a/libc/docs/full_host_build.rst
+++ b/libc/docs/full_host_build.rst
@@ -35,6 +35,14 @@ we've set the Ninja generator, enabled a full compiler suite, set the build
 type to "Debug", and enabled the Scudo allocator.  The build also tells clang
 to use the freshly built lld and compiler-rt.
 
+.. note::
+   if your build fails with an error saying the compiler can't find
+   ``<asm/unistd.h>`` or similar then you're probably missing the symlink from
+   ``/usr/include/asm`` to ``/usr/include/<TARGET TRIPLE>/asm``. Installing the
+   ``gcc-multilib`` package creates this symlink, or you can do it manually with
+   this command:
+   ``sudo ln -s /usr/include/<TARGET TRIPLE>/asm /usr/include/asm``
+
 .. code-block:: sh
 
    $> cd llvm-project  # The llvm-project checkout
@@ -76,6 +84,14 @@ above.
 Build and install
 =================
 
+.. TODO: add this warning to the cmake
+.. warning::
+   Running these install commands without setting a ``$SYSROOT`` will install
+   them into your system include path, which may break your system. If you're
+   just trying to develop libc, then just run ``ninja check-libc`` to build the
+   libc and run the tests. If you've already accidentally installed the headers,
+   you may need to delete them from ``/usr/local/include``.
+
 After configuring the build with the above ``cmake`` command, one can build and
 install the libc, clang (and its support libraries and builtins), lld and
 compiler-rt, with the following command:


        


More information about the libc-commits mailing list