- 締切済み
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; } なぜエラーになってしまうのか分かりません。どうしたらよいのでしょうか? 他に何か必要な情報があれば答えます。よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- jjk65536
- ベストアンサー率59% (66/111)
回答No.2
Centos,fedora,ubuntuあたりでCのコンパイルはよくやるんですが、 そういったエラーには遭遇したことがないですね。 興味深いです。 /usr/include/stdio.h は存在していますよね? gcc -I/usr/include hoge.c -o hoge のようにインクルードパスオプションを付けるとエラーは変化しますか? #include "/usr/include/stdio.h" に置き換えたらエラーの内容は変化しますか?
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.1
ヘッダがどこにあるかわかっていないので, なんかの環境変数がおかしい気がする. INCLUDE_PATH とかかなぁ? gcc -v の結果を見れば, ひょっとするとなんかなるかもしれんけど....
補足
ありがとうございます。以下が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)