It's important to mention Orgad Shaneh, a dear colleague who helped me get to 
this solution.

Patch contents:

From 4184b9fc3cbaeabe1892e5d68ddb886373c8ea00 Mon Sep 17 00:00:00 2001
From: Yehiel Zohar <>
Date: Tue, 15 Jan 2019 09:29:46 +0200
Subject: [PATCH] Fix link errors with SQLITE_OMIT_VIRTUALTABLE

sqlite3.c:150722: undefined reference to `sqlite3VtabFinishParse'
sqlite3.c:150725: undefined reference to `sqlite3VtabFinishParse'
sqlite3.c:150729: undefined reference to `sqlite3VtabBeginParse'
sqlite3.c:150733: undefined reference to `sqlite3VtabArgInit'
sqlite3.c:150738: undefined reference to `sqlite3VtabArgExtend'
src/sqliteInt.h | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/sqliteInt.h b/src/sqliteInt.h
index fe0bd6226..3f62080af 100644
--- a/src/sqliteInt.h
+++ b/src/sqliteInt.h
@@ -4388,6 +4388,10 @@ void sqlite3AutoLoadExtensions(sqlite3*);
#  define sqlite3VtabUnlockList(X)
#  define sqlite3VtabSavepoint(X, Y, Z) SQLITE_OK
#  define sqlite3GetVTable(X,Y)  ((VTable*)0)
+#  define sqlite3VtabBeginParse(A, B, C, D, E)
+#  define sqlite3VtabFinishParse(X, Y)
+#  define sqlite3VtabArgInit(X)
+#  define sqlite3VtabArgExtend(X, Y)
    void sqlite3VtabClear(sqlite3 *db, Table*);
    void sqlite3VtabDisconnect(sqlite3 *db, Table *p);
@@ -4408,7 +4412,6 @@ void sqlite3AutoLoadExtensions(sqlite3*);
#  define sqlite3VtabInSync(db) ((db)->nVTrans>0 && (db)->aVTrans==0)
int sqlite3VtabEponymousTableInit(Parse*,Module*);
void sqlite3VtabEponymousTableClear(sqlite3*,Module*);
void sqlite3VtabMakeWritable(Parse*,Table*);
@@ -4421,6 +4424,7 @@ int sqlite3VtabCallConnect(Parse*, Table*);
int sqlite3VtabCallDestroy(sqlite3*, int, const char *);
int sqlite3VtabBegin(sqlite3 *, VTable *);
FuncDef *sqlite3VtabOverloadFunction(sqlite3 *,FuncDef*, int nArg, Expr*);
sqlite3_int64 sqlite3StmtCurrentTime(sqlite3_context*);
int sqlite3VdbeParameterIndex(Vdbe*, const char*, int);
int sqlite3TransferBindings(sqlite3_stmt *, sqlite3_stmt *);

This email and any files transmitted with it are confidential material. They 
are intended solely for the use of the designated individual or entity to whom 
they are addressed. If the reader of this message is not the intended 
recipient, you are hereby notified that any dissemination, use, distribution or 
copying of this communication is strictly prohibited and may be unlawful.

If you have received this email in error please immediately notify the sender 
and delete or destroy any copy of this message
sqlite-users mailing list

Reply via email to