1. ホーム
  2. c

[解決済み] C標準ライブラリヘッダに対するEclipse CDTで "Unresolved inclusion" エラーが発生する。

2022-02-04 11:04:10

質問内容

eclipseにCDTをセットアップして、簡単なhello worldのCプログラムを書きました。

#include <stdio.h>

int main(void){
    puts("Hello, world.");
    return 0;
}

プログラムは正しくビルドされ実行されますが、eclipseでは次のようなインクルージョン文の横に黄色いクエスチョンマークが表示され続けます。 "Unresolved inclusion: <stdio.h>" マウスを乗せると

プログラムの実行には影響しませんが、かなり煩わしいと思います。

どなたか削除する方法をご存じないでしょうか?

解決方法は?

Eclipseが使用しているコンパイラーは、シンボルをうまく解決できるので、コードはうまくコンパイルされます。

しかし、Eclipseが使っているコード・コンプリーション/インデクサーやプリプロセッサーでは、どこに stdio.h が存在します。

のあるファイルシステム・パスを指定する必要があります。 stdio.h が配置されています。

Eclipseのドキュメントでは、コンパイラーに関するいくつかのセクションでこのことが説明されています。

また、コード補完/インデックス作成ソフトやプリプロセッサが、特に stdio.h :

の正確な位置は stdio.h は、あなたがコードを書こうとしているシステムによって異なります。Eclipseを実行しているのと同じシステムでコードを書くのであれば、標準的な場所は次のようになります。 /usr/include/stdio.h Linux、macOS、Cygwin などの場合。

別のターゲットシステム(例:Android、Raspberry Pi、STM32)用にクロスコンパイルする場合は、そのシステム用にインストールしたSDKのどこかにあります。そのSDKのドキュメントを参照する必要があります。