SDK 2.2用のiPhoneアプリを作成しました。私はXCodeとSDKを更新しました。今はSDK 4.2しか持っていません。SqliteでiOS 4のコンパイルに失敗する
問題は、コンパイルすることさえできないということです。
私は次のエラーを取得:
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/usr/include/sqlite3.h:5772:エラー: '=' が予想を、 ' ' ';'、 'ASM' または' 属性' 'int型の前に
問題の行は次のとおりです。
SQLITE_APIのint型のsqlite3_rtree_geometry_callback( sqlite3のの*デシベル、 のconstのchar * zGeom、 int(* xGeom)(sqlite3_rtree_geometry *、int nC oord、double * aCoord、int * pRes)、 void * pContext );
新しいsqliteフレームワーク(libsqlite3.dylibとlibsqlite3.dylibの両方)を再リンクしようとしましたが、どちらもまだこのエラーの原因です。
私のインポートステートメント(#import "sqlite3.h")をコメントアウトすると、うまくコンパイルされます。 (私は明らかに、それを実行したときに、それがクラッシュしたが。)
コンパイラが認識できないものにSQLITE_INTが定義されているようです。 '-E'フラグをつけて' gcc'を実行すると、コンパイラが動作するためにどのようなプリプロセッサが生成されているのかを知ることができますか? –
端末で 'gcc -E'を実行すると、次のようなメッセージが表示されます。i686-apple-darwin10-gcc-4.2.1:入力ファイルがありません。それがあなたが求めていたものかどうかは分かりません。私のプロジェクト設定のどこかに-Eフラグを追加する必要がある場合、私はそれをどこで行うべきかわかりません。 – Jet
私はXcode 3.2.3をiOS 4.0 SDKと共にインストールしました。私のアプリはコンパイルされ、iPhone Simulator 4.0で正常に動作します。しかし、同じプロジェクトを使用し、シミュレータを使ってXCode 3.2.5で開くと、コンパイルが失敗します。 – Jet