こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Linuxでプログラミング

Windows7でVirtualBoxを利用してLinuxを使っています。
そのLinuxでC言語のプログラムをgccでコンパイルしたのですが、

error: stdio.h:No such file or directory
In function main':
警告:incompatible implicit declaration of built-in function printf'

と表示されます。プログラムは以下のような内容です。

#include<stdio.h>
int main(void)
{
printf("hello,world\n");

return 0;
}

なぜエラーになってしまうのか分かりません。どうしたらよいのでしょうか?
他に何か必要な情報があれば答えます。よろしくお願いします。

投稿日時 - 2011-07-15 22:09:31

QNo.6878113

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

Centos,fedora,ubuntuあたりでCのコンパイルはよくやるんですが、
そういったエラーには遭遇したことがないですね。
興味深いです。

/usr/include/stdio.h は存在していますよね?

gcc -I/usr/include hoge.c -o hoge
のようにインクルードパスオプションを付けるとエラーは変化しますか?

#include "/usr/include/stdio.h"
に置き換えたらエラーの内容は変化しますか?

投稿日時 - 2011-07-16 13:39:32

ANo.1

ヘッダがどこにあるかわかっていないので, なんかの環境変数がおかしい気がする. INCLUDE_PATH とかかなぁ?

gcc -v の結果を見れば, ひょっとするとなんかなるかもしれんけど....

投稿日時 - 2011-07-15 23:49:25

補足

ありがとうございます。以下がgcc -vの結果です。

Using built-in speds.
Target: i486-linux-gnu
コンフィングオプション:../src/configure -v --enable-languages-c,c++,fortran,objc,objc-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-include-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.2 --program-suffix=4.2 --enable-clocale=gnu--enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --enable-targets=all --enable-checking=release --built=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
スレッドモデル:posix
gcc バージョン4.2.3(Ubuntu 4.2.3-2ubuntu7)

投稿日時 - 2011-07-16 06:31:06

あなたにオススメの質問