I'm trying to compile SQLite for the VxWorks 6.3 platform on an embedded target 
(VxWorks in DKM rather than RTP) and have made fairly good progress but have 
hit a brick wall.
I can get it to compile with the compile options listed below, however, when 
run it gives "disk I/O error-SQLITE_IOERR_LOCK" (error code 0F0A).

The terminal console gives:
fcntl 0 38 SETLK RDLK 1073741824 1 0 -1
fcntl-failure-reason 0 38 SETLK RDLK 1073741824 1 0

The db file is created (and deleted when closed), but with zero contents. I 
also do not see a journal file created at all even when journal mode is set to 
"Persist".

I've tried changing the locking style (-SQLITE_ENABLE_LOCKING_STYLE) however 
this gives me a shedload of compile errors for any value greater than "0"  (see 
below). SQLITE_NO_SYNC has no effect.

Any ideas?

=========================================
compiler options
-DSQLITE_OMIT_WAL=1 \
-DSQLITE_HOMEGROWN_RECURSIVE_MUTEX \
-DSQLITE_THREADSAFE=0 \
-DSQLITE_OMIT_LOAD_EXTENSION \
-DHAVE_UTIME \
-DSQLITE_LOCK_TRACE \
-DSQLITE_DEBUG=2 \
-DSQLITE_DEBUG_OS_TRACE=1 


changes from sqlite 3.7.13

fchown and umask nulled (return constant zero pointer) e.g for umask on line 
25558 

#if defined(OS_VXWORKS)
  { "umask",         (sqlite3_syscall_ptr)0,           0 },
#else  
  { "umask",        (sqlite3_syscall_ptr)posixUmask,           0 },
#endif
#define osUmask     ((mode_t(*)(mode_t))aSyscall[21].pCurrent)

Compile errors when SQLITE_ENABLE_LOCKING_STYLE is set to a value >0

sqlite3.c:25517: error: `pread' undeclared here (not in a function)
sqlite3.c:25517: error: initializer element is not constant
sqlite3.c:25517: error: (near initialization for `aSyscall[9].pCurrent')
sqlite3.c:25517: error: initializer element is not constant
sqlite3.c:25517: error: (near initialization for `aSyscall[9]')
sqlite3.c:25526: error: initializer element is not constant
sqlite3.c:25526: error: (near initialization for `aSyscall[10]')
sqlite3.c:25530: error: initializer element is not constant
sqlite3.c:25530: error: (near initialization for `aSyscall[11]')
sqlite3.c:25534: error: `pwrite' undeclared here (not in a function)
sqlite3.c:25534: error: initializer element is not constant
sqlite3.c:25534: error: (near initialization for `aSyscall[12].pCurrent')
sqlite3.c:25534: error: initializer element is not constant
sqlite3.c:25534: error: (near initialization for `aSyscall[12]')
sqlite3.c:25544: error: initializer element is not constant
sqlite3.c:25544: error: (near initialization for `aSyscall[13]')
sqlite3.c:25550: error: initializer element is not constant
sqlite3.c:25550: error: (near initialization for `aSyscall[14]')
sqlite3.c:25559: error: initializer element is not constant
sqlite3.c:25559: error: (near initialization for `aSyscall[15]')
sqlite3.c:25563: error: initializer element is not constant
sqlite3.c:25563: error: (near initialization for `aSyscall[16]')
sqlite3.c:25566: error: initializer element is not constant
sqlite3.c:25566: error: (near initialization for `aSyscall[17]')
sqlite3.c:25569: error: initializer element is not constant
sqlite3.c:25569: error: (near initialization for `aSyscall[18]')
sqlite3.c:25572: error: initializer element is not constant
sqlite3.c:25572: error: (near initialization for `aSyscall[19]')
sqlite3.c:25576: error: initializer element is not constant
sqlite3.c:25576: error: (near initialization for `aSyscall[20]')
sqlite3.c:25583: error: initializer element is not constant
sqlite3.c:25583: error: (near initialization for `aSyscall[21]')#endif
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to