私の iPhone アプリケーションは、SQLITE の FTS3 関数 (具体的には MATCH と OFFSET) を使用しています。これらは、最適化された検索アルゴリズムにとって不可欠です。3 つの SQLITE ソース ファイル、つまり sqlite3.c、sqlite3.h、および sqlite3ext.h をプロジェクトに SQLite という名前のグループの下に含めることで、FTS3 を実装しました。以前の libsqlite3.dylib ライブラリへの参照を Frameworks グループから削除しました。「その他の C フラグ」および「その他の C++ フラグ」プロジェクト設定を -DSQLITE_ENABLE_FTS3=1 に設定しました。(また、単純にこれらのフラグを -DSQLITE_ENABLE_FTS3 に設定してみました。)
アプリケーションは、デバッグ ビルドとリリース ビルドの両方で、シミュレーターで完全に動作します。このアプリケーションは iPhone でも完全に動作しますが、デバッグ ビルドのみです!
リリース ビルドは、MATCH および OFFSET キーワードを使用した SQL 呼び出しの結果行を返しません。具体的な質問は、「iPhone を接続してリリース バージョンをビルドすると、FTS3 対応バージョンの SQLITE がアプリと一緒にインストールされませんか?」というものです。Mac の適切な Release-iphoneos サブフォルダーに sqlite.o オブジェクト ファイルが表示されます。これは Debug-iphoneos サブフォルダーにあるものよりも少し小さいですが、これはデバッグ シンボルが不足しているためであると結論付けました。
私は解決策を切望しているので、どんなアイデアでも大歓迎です。