【Xcode】SQLite未定義シンボルエラーの対処法

エラー内容

Undefined symbol: _sqlite3_bind_blob
Undefined symbol:_sqlite3_bind_double
Undefined symbol: _sqlite3_bind_int64
...

環境

  • AndroidStudio: Meerkat | 2024.3.1 Patch 1
  • Xcode: Version 16.0 (16A242d)
  • SQLDelight: 2.0.2

解決方法

Xcodeで以下の手順を実行します

  1. プロジェクトファイルを選択
  2. 「Build Phases」タブをクリック
  3. 「Link Binary With Libraries」セクションを展開
  4. 「+」ボタンをクリック
  5. 「libsqlite3.tbd」を検索して追加

これでSQLite関連の未定義シンボルエラーが解決しました。

スクリーンショット

原因

KMPプロジェクトでSQLDelightを使用している場合、iOSターゲットには自動的にSQLiteライブラリがリンクされないため、手動で追加する必要があるようです

Built with Hugo