Lazarus only ships with the sqlite TDataset descendant (TSqliteDataset that resides in sqliteds.pas). SqliteDB unit is not mantained/updated/tested AFAIK, so use it at your own risk.
Here's a patch to compile sqlitedb.pas (I did not test it with data):
Index: sqlitedb.pas
===================================================================
--- sqlitedb.pas (revisão 726)
+++ sqlitedb.pas (cópia de trabalho)
@@ -185,14 +185,14 @@
end;
end;
-function ExecCallback(Sender: TObject; Columns: Integer; ColumnValues: Pointer; ColumnNames: Pointer): integer; cdecl;
+function ExecCallback(Sender: Pointer; Columns: Integer; ColumnValues: PPChar; ColumnNames: PPChar): integer; cdecl;
var
PVal, PName: ^PChar;
n: integer;
sVal, sName: String;
begin
Result := 0;
- with Sender as TSQLite do
+ with TSQLite(Sender) do
begin
if (Assigned(fOnData) or Assigned(fTable)) then
begin
@@ -213,7 +213,7 @@
sVal := fLstVal.CommaText;
sName := fLstName.CommaText;
if Assigned(fOnData) then
- fOnData(Sender, Columns, sName, sVal);
+ fOnData(TObject(Sender), Columns, sName, sVal);
if Assigned(fTable) then
begin
if fTable.Count = 0 then