2012-02-04 19 views
5

Il file 'safe-read.c' include la lib 'config.h', dove si trova questo file?Config.h - Nessun file o directory

Ho trovato molti file con questo nome nelle librerie, ma non so quale sia quello giusto.

UPDATE

ho il mio file con:

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

nel file sicura-read.c c'è questo includono blocco

#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 

Quando compilo il mio file hai il seguente errore:

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

+0

È necessario specificare cosa si sta tentando di compilare (quale libreria) - aggiungerlo come tag alla domanda. Molto probabilmente il config.h viene generato per uno strumento di configurazione: prova a controllare gli script di configurazione nella directory di build di libs. – stefan

+0

Perché sei così convinto di aver bisogno di safe-read.c? Sai quale scopo è destinato a servire? –

+0

So che ci sono modi migliori, ma per il momento è un limite del progetto. È un progetto scolastico e il professore lo vuole e non è molto veloce nel rispondere alle domande degli studenti. – Figus

risposta

13

config.h viene normalmente generato dallo script ./configure per riflettere le caratteristiche del sistema di destinazione. Nel tuo caso, è legato all'intero gnulib "sostituiamo tutte le funzioni della libreria del sistema con i propri hack", quindi molto di quello che c'è in un progetto gnulib config.h è roba da quella porzione di gnulib di configure generata.

1

Probabilmente manchi il pacchetto libconfig-dev dal tuo sistema. Basta eseguire il seguente comando e lo risolverà:

sudo apt-get install libconfig-dev