diff options
| author | 2016-09-03 22:46:54 +0000 | |
|---|---|---|
| committer | 2016-09-03 22:46:54 +0000 | |
| commit | b5500b9ca0102f1ccaf32f0e77e96d0739aded9b (patch) | |
| tree | e1b7ebb5a0231f9e6d8d3f6f719582cebd64dc98 /gnu/llvm/tools/clang/docs/FAQ.rst | |
| parent | clarify purpose of src/gnu/ directory. (diff) | |
| download | wireguard-openbsd-b5500b9ca0102f1ccaf32f0e77e96d0739aded9b.tar.xz wireguard-openbsd-b5500b9ca0102f1ccaf32f0e77e96d0739aded9b.zip | |
Use the space freed up by sparc and zaurus to import LLVM.
ok hackroom@
Diffstat (limited to 'gnu/llvm/tools/clang/docs/FAQ.rst')
| -rw-r--r-- | gnu/llvm/tools/clang/docs/FAQ.rst | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/gnu/llvm/tools/clang/docs/FAQ.rst b/gnu/llvm/tools/clang/docs/FAQ.rst new file mode 100644 index 00000000000..4c4f8a87e3b --- /dev/null +++ b/gnu/llvm/tools/clang/docs/FAQ.rst @@ -0,0 +1,64 @@ +================================ +Frequently Asked Questions (FAQ) +================================ + +.. contents:: + :local: + +Driver +====== + +I run ``clang -cc1 ...`` and get weird errors about missing headers +------------------------------------------------------------------- + +Given this source file: + +.. code-block:: c + + #include <stdio.h> + + int main() { + printf("Hello world\n"); + } + + +If you run: + +.. code-block:: console + + $ clang -cc1 hello.c + hello.c:1:10: fatal error: 'stdio.h' file not found + #include <stdio.h> + ^ + 1 error generated. + +``clang -cc1`` is the frontend, ``clang`` is the :doc:`driver +<DriverInternals>`. The driver invokes the frontend with options appropriate +for your system. To see these options, run: + +.. code-block:: console + + $ clang -### -c hello.c + +Some clang command line options are driver-only options, some are frontend-only +options. Frontend-only options are intended to be used only by clang developers. +Users should not run ``clang -cc1`` directly, because ``-cc1`` options are not +guaranteed to be stable. + +If you want to use a frontend-only option ("a ``-cc1`` option"), for example +``-ast-dump``, then you need to take the ``clang -cc1`` line generated by the +driver and add the option you need. Alternatively, you can run +``clang -Xclang <option> ...`` to force the driver pass ``<option>`` to +``clang -cc1``. + +I get errors about some headers being missing (``stddef.h``, ``stdarg.h``) +-------------------------------------------------------------------------- + +Some header files (``stddef.h``, ``stdarg.h``, and others) are shipped with +Clang --- these are called builtin includes. Clang searches for them in a +directory relative to the location of the ``clang`` binary. If you moved the +``clang`` binary, you need to move the builtin headers, too. + +More information can be found in the :ref:`libtooling_builtin_includes` +section. + |
