2012-02-04 42 views
5

ファイル 'safe-read.c'にはlib 'config.h'が含まれています。Config.h - そのようなファイルやディレクトリはありません

libにこの名前のファイルが多数見つかりましたが、私は正しいものがわかりません。

UPDATE

私はと私のファイルました:私は私のファイルをコンパイルするとき、私は、これはブロック

#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 

を含んありますファイルに

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

安全read.cを次のエラーが表示されます:

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

+0

コンパイルしようとしているもの(どのライブラリ)を指定する必要がありますか?質問にタグとして追加する必要があります。ほとんどの場合、config.hは設定ツール用に生成されます。libsビルドディレクトリの設定スクリプトをチェックアウトしてみてください。 – stefan

+0

なぜあなたは安全なread.cが必要であるとあなたは確信していますか?あなたはそれがどんな目的のために意図されているのか分かりますか? –

+0

良い方法があることを知っていますが、現時点ではプロジェクトの制約です。それは学校プロジェクトであり、教授はそれを望んでおり、学生の質問に素早く反応することはできません。 – Figus

答えて

13

config.hは、通常、ターゲットシステムの特性を反映するために./configureスクリプトによって生成されます。あなたのケースでは、gnulib全体に結びついています。 "すべてのシステムのライブラリ関数を自分自身のハックで置き換えよう"というメッセージがあるので、gnulibプロジェクトの多くはconfig.hで、gnulibの部分はconfigureです。

1

システムからlibconfig-devパッケージが不足している可能性があります。次のコマンドを実行するだけで問題は解決されます。

sudo apt-get install libconfig-dev

関連する問題