2012-02-16 25 views
1

eclipseがextern関数、名前空間、変数などを解決できなかったEclipse C++プロジェクトの私の問題 お願いします。含まれて解決されますがjni.hを見ることができるようEclipse cdtがC++プロジェクトのexternエンティティを解決できませんでした

enter image description here

Bigger one

ので、例えばJNIタイプjintは、日食によって解決ではなく、(私はCNTRLは+それをクリックし、その内容を表示することができます)、私はすべての必要なインクルードパスを設定しているので、すべてのファイルは想定どおりにインクルードされますが、eclipseはそれらからエンティティを解決しません。

どこに問題がありますか?

PS。私はeclipseを使ったC++開発の初心者だから、何かが恋しくなるかもしれません。私を助けてください。私はそれをたくさん感謝します。

ありがとうございました。

+0

画像のより大きなバージョンはそれ以上大きく表示されず、私はそれを読むことができないので、あなたが使っていたライブラリを正確に伝えることができませんでした。私の答えでは、私はちょうどそれを "JNI"と呼んでいたと思います。 – Tod

+0

土地、あなたはそれを大きくするためにループをクリックする必要があります。 この問題は、プロジェクトの手動再インデックスによって解決されました。 – krasilich

答えて

1

また、JNIライブラリがどこにあるかEclipseに伝える必要があります。

あなたがこれをやったことがないなら、see this wiki entry。リンクするセクションには、写真と矢印とテキストが表示されます。

一般的なアドバイス:コンパイラエラーとリンカエラーを区別する方法を学びます。コンパイラエラーの場合は、欠落しているインクルードファイルなどを探すことができます。リンカエラーが発生した場合、コンパイルされ、すべてのヘッダーが正常に見つかりましたが、リンク先の実際のオブジェクトを探していたときに見つかりませんでした。これは、通常、解決するライブラリパスの問題があることを意味します。

最終的な警告が1つあります。私は今Eclipseがツールチェーンの設定をすべて変更するのを見たことがあります。私はいつも回避する設定パネルを見たい場合はwrote this up in a blog entryです。

0

これはリンカがあいまいな変数に直面してリンクするときに混乱するときに、krasilichが言ったように起こります。

変数のヘッダー「extern宣言が含まれています」を再編集して、この問題を一時的に修正しました。クリーンで再度ビルドすると、リンカーは容易に見つけてリンクすることができます。しかし、永続的な解決策は、C/C++ General> Paths and Symbols> Includesにヘッダファイルを含むワークスペース/フォルダパスを追加することでした。

考えられる説明はコンパイラとリンカに依存します。私は問題なくGCCをやってみました。 GHSのようなプライベートコンパイラを使うと、この問題は特定の変数で発生します。

関連する問題