2012-02-04 22 views
5

El archivo 'safe-read.c' incluye lib 'config.h', ¿dónde se encuentra este archivo?Config.h - No existe ningún archivo o directorio

He encontrado muchos archivos con este nombre en las librerías, pero no sé cuál es el correcto.

ACTUALIZACIÓN

tengo mi archivo con:

... 
#include <safe-read.h> 
#include <safe-read.c> 
... 

en el archivo segura-read.c Hay este bloque incluye

#include <config.h> //line 19 

/* Specification. */ 
#ifdef SAFE_WRITE 
# include "safe-write.h" 
#else 
# include "safe-read.h" 
#endif 

/* Get ssize_t. */ 
#include <sys/types.h> 
#include <unistd.h> 

#include <errno.h> 

#ifdef EINTR 
# define IS_EINTR(x) ((x) == EINTR) 
#else 
# define IS_EINTR(x) 0 
#endif 

#include <limits.h> 

#ifdef SAFE_WRITE 
# define safe_rw safe_write 
# define rw write 
#else 
# define safe_rw safe_read 
# define rw read 
# undef const 
# define const /* empty */ 
#endif 

Cuando compilo mi archivo que he el siguiente error:

file: X/Y/gnulib/lib/safe-read.c line: 19 message: fatal error: config.h: No such file or directory

+0

Es necesario especificar lo que está tratando de compilar (lo que la biblioteca) - añadirlo como una etiqueta a su pregunta. Lo más probable es que la config.h se genere para una herramienta de configuración; pruebe a verificar cualquier script de configuración en el directorio de compilación de libs. – stefan

+0

¿Por qué estás tan convencido de que necesitas safe-read.c? ¿Sabes para qué sirve servir? –

+0

Sé que hay mejores formas, pero es una limitación del proyecto por el momento. Es un proyecto de la escuela y el profesor lo quiere y no responde muy rápido a las preguntas de los estudiantes. – Figus

Respuesta

13

config.h normalmente se genera mediante el script ./configure para reflejar las características del sistema de destino. En su caso, está ligado a todo el gnulib "reemplace todas las funciones de la biblioteca del sistema con sus propios hacks", así que mucho de lo que hay en un proyecto de gnulib config.h es algo que generó la porción de configure de gnulib.

1

Probablemente se esté perdiendo el paquete libconfig-dev de su sistema. Basta con ejecutar el siguiente comando y va a solucionarlo:

sudo apt-get install libconfig-dev

Cuestiones relacionadas