A brief report on building sqlite-3.3.4 with MinGW/MSYS and tcl84 on
WinXP...

1. After configure, a small edit was necessary to the Makefile; for
some reason libtool doesn't put .lo objects into .libs subdirectory
anymore; there was also an issue reported on the mailing list with
stripping the DLL; so I changed the dll target to:

dll: sqlite3.dll

REAL_LIBOBJ = $(LIBOBJ:%.lo=%.o)

sqlite3.dll: $(LIBOBJ) $(TOP)/sqlite3.def
        dllwrap --dllname sqlite3.dll --def $(TOP)/sqlite3.def $(REAL_LIBOBJ)
        strip --strip-unneeded sqlite3.dll


2. gcc 3.4.5 blew up trying to compile tclsqlite.c

I was able to work around the problem by adding these lines in tclsqlite.c:

#undef EXTERN
#define EXTERN extern

Without these lines, EXTERN is translated to __declspec((dllimport))
which is not what we want, and was giving gcc fits (ICE) for some reason.

I also wonder about the purpose of

#ifdef BUILD_sqlite
#undef TCL_STORAGE_CLASS
#define TCL_STORAGE_CLASS DLLEXPORT
#endif /* BUILD_sqlite */

since TCL_STORAGE_CLASS doesn't see to be used anywhere in the file.

Regards,

e

Reply via email to