GLibに依存せずにSqlitevapiを使用する必要があります。SQliteは非gobjectライブラリであるため、それが可能であるはずです。
しかし、--profile posix
オプションを指定して次のファイルをコンパイルしようとすると、
using Sqlite;
void main() {
stdout.printf("Hello, World!");
}
エラーメッセージが表示されます:
sqlite3.vapi:357.56-357.59: error: The symbol `GLib' could not be found
public int bind_blob (int index, void* value, int n,
GLib.DestroyNotify destroy_notify);
^^^^
sqlite3.vapi:362.68-362.71: error: The symbol `GLib' could not be found
public int bind_text (int index, owned string value, int n = -1,
GLib.DestroyNotify destroy_notify = GLib.g_free);
^^^^
sqlite3.vapi:411.42-411.45: error: The symbol `GLib' could not be found
public void result_blob (uint8[] data, GLib.DestroyNotify?
destroy_notify = GLib.g_free);
^^^^
sqlite3.vapi:420.59-420.62: error: The symbol `GLib' could not be found
public void result_text (string value, int length = -1,
GLib.DestroyNotify? destroy_notify = GLib.g_free);
^^^^
Compilation failed: 4 error(s), 0 warning(s)
sqlite vapiで定義されている関数のいくつかは、GLib.g_free
とGLib.DestroyNotify
記号を参照しているようです。それらに代わるposixはありますか?