4

hg cloneC / C ++(Eclipse CDT)プロジェクトを(経由して)ローカルでフォークし、Eclipseワークスペースにインポートしました。フォークされたプロジェクトのエディターウィンドウは次のようになります。

ここに画像の説明を入力してください

明らかに、コードは正しくビルドされるため、これらは実際のエラーではありません。また、これらのエラーは、このプロジェクトがフォークされた元のプロジェクトではマークされていません。

なぜEclipseはこのソースにエラーがあると考えるのですか?

編集:「バグ」にカーソルを合わせたときのEclipseエラーメッセージは、たとえば、Type int64_t could not be resolvedですsymbol 'cout' could not be resolved

includes編集:Eclipseは通常、プロジェクトで名前が付けられた「フォルダー」を表示することに気づきました。このプロジェクトにはありません。どうすれば元に戻すことができますか?

ここに画像の説明を入力してください

4

5 に答える 5

3

Eclipseは、インクルードファイルを見つけるパスを知っている必要があります。これは、一般的な日食設定またはプロジェクトごとに設定できます。

何らかの理由で、現在のプロジェクトにデフォルトのパスが設定されていないようです。

できること:プロジェクト設定を開き、C / C ++ General-> Paths and Symbols(少なくとも、私のEclipseバージョンではこのように呼び出されます)に移動し、インクルードディレクトリを修正します。

たぶん、その特定のプロジェクトのデフォルト構成をロードするだけで十分です。たぶん、自分でインクルードパスを設定する必要があります。Unix / OS Xでは、これは通常usr/include。Windowsではわかりませんが、簡単に見つけることができます。

その後、Eclipseインデックスを再構築する必要がある場合があります(プロジェクトを右クリックして、インデックス->再構築します)。

それでも問題が解決しない場合は、プロジェクトの[パスとシンボル]ダイアログのスクリーンショットを共有してください。

このトピックに関する日食のドキュメントも参照してください。

于 2012-11-25T10:05:39.240 に答える
2

含める必要がありました

  • CDT Cross GCC Built-in Compiler Settings
  • CDT GCC Built in Compiler Settings [ Shared ]

プロジェクトのプロパティ -> C/C++ 一般 -> プリプロセッサ インクルード パス、マクロなど -> プロバイダ

于 2014-09-05T10:42:42.873 に答える
0

これは、Mac OS X Yosemite 10.10.5、Eclipse バージョン Mars.1 リリース (4.5.1) で機能しました。

インクルードは通常、ツールチェーンを介して Eclipse によって検出されるため、実際のツールチェーンが設定されていることを確認してください(プロジェクトのインポート後にこの問題に遭遇したとき、ツールチェーンは「ツールチェーンなし」に設定されていました)。

プロジェクト -> プロパティ -> C/C++ ビルド -> ツール チェーン エディター -> 現在のツールチェーン

ドロップダウンにツールチェーンが表示されない場合は、「互換性のあるツールチェーンのみを表示する」のチェックを外し、ツールチェーンを選択してみてください (私は Cross GCC を選択しました)。変更を保存し、プロジェクト プロパティを再度開いてこのフィールドを確認すると、[互換性のあるツールチェーンのみを表示] が自動的に再チェックされました。

次に、プロジェクトのインデックスを再作成します。

プロジェクト -> C/C++ インデックス -> リビルド

これで問題が解決しました(「疑似エラー」が消え、ファイルシステムビューのプロジェクトの下にインクルード「フォルダー」が表示されました)。

于 2016-01-25T19:35:11.747 に答える
-1

#includeコードで正しいファイルを作成しましたか? std::cout の場合は次のようになります。

#include <iostream>

およびint64_t:

#include stdint.h
于 2012-11-24T18:59:07.460 に答える