4

Eclipse を使用してネイティブ android プロジェクトを作成しています。OpenGL es 1.1 を使用しています。

「glext.h」で定義された関数の使用に問題があります。"glext.h" で定義されたマクロを使用できますが、"glext.h" で定義された関数を使用しようとすると、その関数を解決できないと表示されます。

glext.h が非推奨であることは知っていますが、本を読んでいて、これを機能させたいと思っています。私は書籍のソースコードを使用しましたが、同じ問題がありました。

glext.h で定義されている関数を使用するにはどうすればよいですか?

4

1 に答える 1

2

ヘッダー ファイルをインクルードすると、そのヘッダー ファイルの内容のみが取得されます。あなたの場合、ヘッダーファイルに完全に含まれているマクロと関数宣言を取得します。それらは関数が存在することを宣言するだけで、関数定義である実際のコードではありません。

実際の関数 (定義) にアクセスするには、ライブラリにリンクする必要があります。unresolved functions エラーは、コンパイラーは関数が存在することを認識していますが、リンカーはその場所を認識していないことを意味します。

あなたの解決策は、OpenGL ES 1.x ライブラリをリンクすることだけかもしれません。これを行うには、Android.mkファイルを確認し、sets の行に がLOCAL_LDLIBS含まれていることを確認します-lGLESv1_CM。このような:

LOCAL_LDLIBS := -llog -ldl -lGLESv1_CM

これにより、ロガー、ダイナミック リンカー、および OpenGL ES 1.x ライブラリがリンクされます。

ここから情報を取得しています。Google のサイトで正規のソースが見つかりませんでした。

于 2012-12-20T15:59:16.503 に答える