2009-06-10 21 views
36

tengo el siguiente código en un archivo de ejemplo:¿Cómo incluir archivos de encabezado en la ruta de búsqueda de GCC?

#include "SkCanvas.h" 
#include "SkDevice.h" 
#include "SkGLCanvas.h" 
#include "SkGraphics.h" 
#include "SkImageEncoder.h" 
#include "SkPaint.h" 
#include "SkPicture.h" 
#include "SkStream.h" 
#include "SkWindow.h" 

Sin embargo, este código se encuentra en varias carpetas dentro de/home/me/desarrollo/skia (que incluye núcleo/animador/images/puertos/SVG/y mucho más.)

¿Cómo puedo hacer que GCC reconozca esta ruta?

+0

http://stackoverflow.com/questions/558803/how-to-add-a-default-include-path-for-gcc-in-linux –

Respuesta

55

Trate gcc -c -I/home/me/development/skia sample.c. Ver here.

+1

Me alegro de ver esta respuesta aquí. Otro punto que vale la pena mencionar es que cuando tiene muchos archivos fuente ".c", es necesario especificarlos en la propia línea de comandos. No puede simplemente hacer algo como -I para especificar que todos los archivos fuente estén en un directorio determinado. – Nav

+0

Si el encabezado está en el mismo directorio que el origen, ¿necesita un incluir especial? No puedo obtener mi código para compilar de ninguna manera, y no estoy seguro de cuál es el problema – CodyBugstein

+0

Según [esta respuesta] (https://stackoverflow.com/a/510151/1403102) a una pregunta similar, ' gcc' no buscaría automáticamente en los subdirectorios los diferentes archivos de encabezado. En cambio, 'pkg-config' podría producir la opción' -I' adecuada? –

16

La directiva -I hace el trabajo:

gcc -Icore -Ianimator -Iimages -Ianother_dir -Iyet_another_dir my_file.c 
Cuestiones relacionadas