Thanks for the tips!

Don't know about the segfault too but can ignore it for now — this same
file works well with the GUI app and with my Node.js program.

On Thu, Oct 19, 2017 at 6:38 PM Dan Kennedy <danielk1...@gmail.com> wrote:

> On 10/19/2017 08:40 PM, Eugene Mirotin wrote:
> > Hm, I think that's because the extension is already preloaded with my
> > version if sqlite. Which means I didn't even have to build it :)
> > But now is the question how would I reliably load / not load it in
> > production env if the target user may or may not have sqlite precompiled
> > with it?
>
> Right, it's an error to try to register a new version of a module -
> "fts5" in this case - that has already been registered.
>
> You could just assume that if the attempt to load fts5 dynamically fails
> it is already registered. Or you could try preparing the statement
> "SELECT fts5_source_id()" before loading the extension. If preparing the
> statement succeeds, fts5 is already present and you don't need to load it.
>
> Don't know why you might be getting the segfault.
>
> Dan.
>
>
> >
> > On Thu, Oct 19, 2017 at 3:30 PM Eugene Mirotin <emiro...@gmail.com>
> wrote:
> >
> >> Well, now I have troubles loading this extension.
> >>
> >> I've built another one before, fts5stemmer.
> >>
> >> When using the CLI sqlite3 (version 3.20.1 from MacPorts):
> >>
> >> ❯ sqlite3
> >> SQLite version 3.20.1 2017-08-24 16:21:36
> >> Enter ".help" for usage hints.
> >> Connected to a transient in-memory database.
> >> Use ".open FILENAME" to reopen on a persistent database.
> >> sqlite> .load './fts5.dylib'
> >> Error: error during initialization:
> >> sqlite> .load './fts5stemmer.dylib'
> >> [1]    35952 segmentation fault  sqlite3
> >>
> >> When using the GUI DB Browser for SQLite:
> >> fts5 extension reports the same error "Error: error during
> initialization:"
> >> fst5stemmer loads fine (or at least reports to)
> >>
> >> On Thu, Oct 19, 2017 at 3:09 PM Eugene Mirotin <emiro...@gmail.com>
> wrote:
> >>
> >>> Thanks a lot Dan, that worked!
> >>> I'm fine with the trunk version for now but hope to see this in stable
> >>> eventually as I'll have to later build this extension for various
> platforms
> >>> for the release of my app.
> >>> Thanks again for the quick fix
> >>>
> >>> On Wed, Oct 18, 2017 at 6:06 PM Dan Kennedy <danielk1...@gmail.com>
> >>> wrote:
> >>>
> >>>> On 10/18/2017 06:32 PM, Eugene Mirotin wrote:
> >>>>> In short the error I get is
> >>>>> fts5_storage.c:305:9: error: 'sqlite3_api_routines' has no member
> named
> >>>>> '__builtin___snprintf_chk'
> >>>>>
> >>>>> More details in SO question here:
> >>>>>
> >>>>
> https://stackoverflow.com/questions/46793988/sqlite-trouble-building-fts5-loadable-extension
> >>>> ,
> >>>>> please let me know if I should paste everything in my email.
> >>>>>
> >>>>> I've seen a similar problem reported before and somehow related to
> >>>> XCode,
> >>>>> but that issue was reported to be fixed.
> >>>>>
> >>>>> Would be thankful for any tips, I haven't used C for years and have
> no
> >>>> idea
> >>>>> where to start.
> >>>> Please try with the latest trunk checkin:
> >>>>
> >>>>     http://www.sqlite.org/src/info/cd0471ca9f75e7c8
> >>>>
> >>>> (click the "ZIP archive" link to download if you're not using fossil)
> >>>>
> >>>> To generate the sqlite3ext.h and sqlite3.h files required when
> compiling
> >>>> fts5.c, run [make sqlite3.h sqlite3ext.h]. So, altogether, something
> >>>> like:
> >>>>
> >>>>     ./configure
> >>>>     make fts5.c sqlite3.h sqlite3ext.h
> >>>>     gcc -O2 -fPIC -shared fts5.c -o fts5.dylib
> >>>>
> >>>> Or, if you want to use a released version, after [make sqlite3ext.h]
> >>>> replace the two instances of "snprintf" in the sqlite3ext.h with
> >>>> "xsnprintf".
> >>>>
> >>>> Dan.
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> sqlite-users mailing list
> >>>> sqlite-users@mailinglists.sqlite.org
> >>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
> >>>>
> > _______________________________________________
> > sqlite-users mailing list
> > sqlite-users@mailinglists.sqlite.org
> > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
>
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to