Warren Young <warren <at> etr-usa.com> writes: > > Send me the cygport file and I'll build new sqlite3 packages.
I've just made a local patch package, tests look good so far. Specifically, I can now build the Perl DBD::SQLite module (either with the bundled SQLite or the locally installed library) and have all tests pass even when I'm not administrator. ---8<----->8--- ORIG_PN="sqlite" ORIG_PV=`echo $PV|tr . \ |\ awk -e '{printf "%1d%02d%02d%02d",$1,$2,$3,$4;}'` DESCRIPTION="SQLite database library" HOMEPAGE="http://www.sqlite.org/" SRC_URI="http://www.sqlite.org/${ORIG_PN}-autoconf-${ORIG_PV}.tar.gz" SRC_DIR="${ORIG_PN}-autoconf-${ORIG_PV}" PKG_NAMES="${PN} lib${PN}_0 lib${PN}-devel" PKG_HINTS='setup lib devel' PKG_CONTENTS[0]='usr/bin/*.exe usr/share/' PKG_CONTENTS[1]='usr/bin/*.dll' PKG_CONTENTS[2]='usr/include/ usr/lib/' NO_AUTOHEADER=1 CYGCONF_ARGS="CC=gcc-4 CXX=g++-4" # define -DSQLITE_OS_UNIX to avoid Cygwin being recognized as "Windows" CPPFLAGS="-DSQLITE_OS_UNIX -DSQLITE_ENABLE_COLUMN_METADATA\ -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS_PARENTHESIS\ -DSQLITE_ENABLE_FTS4" ---8<----->8--- > (If you're wondering why I haven't responded to this thread before > now, it's because this is the first post to the thread that told me > there was a problem with the package.) I wasn't sure either where the problem was. This particular "feature" has been in SQLite forever and on of my colleagues just tells me he's been bitten by it many years before. The conditions for it to occur are apparently sufficiently narrow to not bother most folks. To summarize (and hopefully for others to reproduce by now), all of the following conditions must hold for the error to trigger: 1. The user running SQLite must not have administrative rights. 2. SQLite must not be run from a Windows console, but in mintty. (I didn't test other terminals). 3. SQLite needs to be told to open a TEMPORARY database _and_ put it to disk. This will get you "Error: unable to open database file". If you build SQLite with debugging switched on, it will actually tell you a quite different story: assertion "isDelete==0 || isCreate" failed: file "/usr/src/sqlite3-3.7.3-1p1/src/sqlite-3.7.3/sqlite3.c", line 31496, function: winOpen Abort (core dumped) The clue here is that it tried to use a Windows interface to open the file, not a Cygwin one, which got me on the right track. -- Achim. -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple