Hi all!

I would like to share a few thoughts about building SQLite on Windows using 
MingW and MSYS.

I have downloaded the full source package and after unpacked I used MSYS to 
run configure with --prefix option to change the path where "install" would 
place libraries and binaries.

The build in MSYS using the Makefile that configure generated worked fine, but 
when I attempted to run "make install" I got an error since no tclsh was 
available.

The error was tricky, since I have run configure with --disable-tcl and so no 
tcl libraries should have been built.

Reading the error better I discovered the problem was that "make install" 
tried to build the amalgamation.

Why building the amalgamation when not asked to using "make sqlite3.c"???

The problem lies in "install" target dependencies as generated by configure 
running in MSYS.

The "install" target depends on "sqlite3" and the line in the Makefile looks 
like this:

    install: sqlite3 libsqlite3.la sqlite3.h ${HAVE_TCL:1=tcl_install}

For reasons I not had time to investigate, make gets "sqlite3" dependency as 
sqlite3.c (the amalgamation!) and tries to build it using tclsh.

Just renaming "sqlite3" to "sqlite3.exe" in both lines:

    install: sqlite3.($TEXE) libsqlite3.la sqlite3.h ${HAVE_TCL:1=tcl_install}

and 

        $(LTINSTALL) sqlite3.($TEXE) $(DESTDIR)$(exec_prefix)/bin

solved the problem and I was able to "make install" work properly.

So the question is why does configure does not generate sqlite3.exe instead in 
MSYS?

Best

Paolo



-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to