2011-03-02 17 views
6

Quiero compilar un programa C en gcc que tiene mis 2 archivos de cabecera.¿Cómo compilar un programa C en gcc que tiene archivos de encabezado?

estoy usando el comando:

gcc UDP_Receive.c -o UDP_Receive -lm

compilarlo pero me da un error que indica "UDP_Data.h: No existe el fichero o directorio"

¿Cómo puedo decirle al compilador que incluya estos archivos de encabezado?

Archivos de encabezado:

# include "UDP_Data.h"

# include "Crypt.h"

Gracias, Ritesh

+0

Dupe de http://stackoverflow.com/questions/973146/how-to-include-header-files-in-gcc-search-path – GrahamS

Respuesta

6

Uso -Idirectory añadir incluye rutas, o haz que tu declaración #include use rutas relativas.

EDIT: También tenga en cuenta que #include nombres de archivo son sensibles a mayúsculas y minúsculas en muchas plataformas.

Edit2: Uso #include "UDP_Data.h" no #include <UDP_Data.h>

+0

Mis archivos de encabezado están en la misma ubicación que mis archivos de código fuente. –

+0

Mis archivos de encabezado están en la misma ubicación que mis archivos de código fuente. ¿Podría publicar un ejemplo detallado para guiarme en el proceso de compilación? Gracias –

+2

¿El nombre de archivo es exactamente 'UDP_Data.h'? No, por ej. 'UDP_data.h'? – Erik

4

Usted le ha dicho al compilador que incluya ese archivo, con una línea como la siguiente:

#include "UDP_Data.h" 

el problema es que el compilador no puede encontrar el archivo , y no olvide que algunas plataformas distinguen entre mayúsculas y minúsculas cuando se trata de nombres de archivos, por lo que "UDP_data.h" no es el mismo archivo que "UDP_Data.h". El compilador buscará en algunos lugares de forma predeterminada, pero deberá agregar directorios adicionales a su búsqueda utilizando las opciones de línea de comando. La opción exacta dependerá del compilador, por gcc es:

-I<directory> 
+0

@Jim: ¿Cómo obtendría ese error si esa línea no estuviera en el archivo fuente? (¡Además de las opciones de línea de comando extra por supuesto!) – Skizz

Cuestiones relacionadas