¿Cómo consultar las rutas de inclusión predeterminadas de clang ++?

1 minuto de lectura

¿Cómo puedo consultar la ruta de inclusión predeterminada de clang/clang++? Estoy tratando de usar un compilador de sonido personalizado (el que admite OpenMP), pero no parece encontrar las bibliotecas STL:

/usr/local/bin/clang++ hello.cpp 
hello.cpp:1:10: fatal error: 'iostream' file not found
#include <iostream>
     ^
1 error generated.

Mediante el uso de un IDE, rastreando el #include iostream y, finalmente, utilizando el -isistema opción Obtuve la aplicación helloworld simple para compilar en OSX 10.9:

/usr/local/bin/clang++ -isystem /Library/Developer/CommandLineTools/usr/lib/c++/v1 hello.cpp

¡Gracias por tu ayuda!

Estás buscando una opción -v. Compilando con clang++ -c file.cc -v imprimirá entre otras cosas:

#include "..." search starts here:
#include <...> search starts here:
 /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9

etc.

  • También puede usar -H opción para imprimir encabezados utilizados para compilar un archivo en particular.

    – scrutari

    29 de febrero de 2020 a las 8:13

Si tu corres

clang++ -### hello.cpp

Mostrará los comandos utilizados para compilar ese archivo en particular, incluidas las rutas de inclusión predeterminadas, las rutas de búsqueda de la biblioteca, los objetivos, etc.

¿Ha sido útil esta solución?