AndroidNDKでINT32_MAXがないとエラーが出た
ndk-buildしたときに、こんなエラーが出ました。
error: 'INT32_MAX’ was not declared in this scope
“INT32_MAX"は、stdint.h に宣言されているので、エラーの出ている cpp ファイルに以下のコードを追加しました。
#define __STDC_LIMIT_MACROS #include <stdint.h>
ビルドしてみると、まだ見つからないとか言われます。
そんなわけないだろ。
いろいろ試した結果、Android.mk の LOCAL_CFLAGS に -D__STDC_LIMIT_MACROS を追加したら参照できるようになりました。
ちなみに、stdint.h の include は追加しなくても、LOCAL_CFLAGS への宣言だけ追加すればビルドは通ります。
一応、プロジェクト内で stdint.h を include しているファイルがないか調べてみましたが、見つかりませんでした。
NDK 内の処理で include している処理があるのかな。
確認するのは面倒なので、とりあえず解決法として残しておきます。
おしまい。
ディスカッション
コメント一覧
まだ、コメントがありません