Steve Friedman wrote:
> libtool: compile:  gcc -g -O3 -DSQLITE_ENABLE_RTREE=1 -DTEMP_STORE=2 
> -DSQLITE_DEFAULT_CACHE_SIZE=1000000 -DSQLITE_DEFAULT_PAGE_SIZE=32768 
> -DSQLITE_OMIT_ALTERTABLE=1 -DSQLITE_OMIT_ANALYZE=1 
> -DSQLITE_OMIT_ATTACH=1 -DSQLITE_OMIT_AUTHORIZATION=1 
> -DSQLITE_OMIT_AUTOVACUUM=1 -DSQLITE_OMIT_BLOB_LITERAL=1 
> -DSQLITE_OMIT_DATETIME_FUNCS=1 -DSQLITE_OMIT_EXPLAIN=1 
> -DSQLITE_OMIT_FOREIGN_KEY=1 -DSQLITE_OMIT_PROGRESS_CALLBACK=1 
> -DSQLITE_OMIT_TRACE=1 -DSQLITE_OMIT_TRIGGER=1 -DSQLITE_OMIT_UTF16 
> -DSQLITE_OMIT_VIEW=1 -DSQLITE_OS_UNIX=1 -I. -I../sqlite-latest/src 
> -D_HAVE_SQLITE_CONFIG_H -DNDEBUG -DSQLITE_THREADSAFE=0 
> -DSQLITE_THREAD_OVERRIDE_LOCK=-1 -DSQLITE_OMIT_LOAD_EXTENSION=1 -c 
> sqlite3.c  -fPIC -DPIC -o .libs/sqlite3.o
> sqlite3.c: In function ‘yy_reduce’:
> sqlite3.c:78433: warning: assignment makes pointer from integer without 
> a cast
> sqlite3.c:78436: warning: assignment makes pointer from integer without 
> a cast
> sqlite3.c:78439: warning: assignment makes pointer from integer without 
> a cast
> sqlite3.c:78442: warning: assignment makes pointer from integer without 
> a cast
> sqlite3.c:78445: warning: assignment makes pointer from integer without 
> a cast

Can you post the contents of these lines from your custom built 
sqlite3.c file? They are all together (13 lines) and might provide some 
context about these warnings.

> sqlite3.c: In function ‘rtreeCreate’:
> sqlite3.c:91283: warning: cast from pointer to integer of different size
> sqlite3.c: In function ‘rtreeConnect’:
> sqlite3.c:91296: warning: cast from pointer to integer of different size

Same goes for these lines.

> sqlite3.c: At top level:
> sqlite3.c:9677: warning: ‘sqlite3CreateView’ used but never defined
> sqlite3.c:9732: warning: ‘sqlite3Vacuum’ used but never defined
> sqlite3.c:9781: warning: ‘sqlite3MaterializeView’ used but never defined
> sqlite3.c:9823: warning: ‘sqlite3Attach’ used but never defined
> sqlite3.c:9824: warning: ‘sqlite3Detach’ used but never defined
> sqlite3.c:9912: warning: ‘sqlite3AlterRenameTable’ used but never defined
> sqlite3.c:9919: warning: ‘sqlite3AlterFinishAddColumn’ used but never 
> defined
> sqlite3.c:9920: warning: ‘sqlite3AlterBeginAddColumn’ used but never defined
> sqlite3.c:9923: warning: ‘sqlite3Analyze’ used but never defined

This looks like some references to these functions were not omitted even 
though the functions themselves were. I think these are all just 
warnings because these functions could be provided by a different file 
at link time.

> libtool: compile:  gcc -g -O3 -DSQLITE_ENABLE_RTREE=1 -DTEMP_STORE=2 
> -DSQLITE_DEFAULT_CACHE_SIZE=1000000 -DSQLITE_DEFAULT_PAGE_SIZE=32768 
> -DSQLITE_OMIT_ALTERTABLE=1 -DSQLITE_OMIT_ANALYZE=1 
> -DSQLITE_OMIT_ATTACH=1 -DSQLITE_OMIT_AUTHORIZATION=1 
> -DSQLITE_OMIT_AUTOVACUUM=1 -DSQLITE_OMIT_BLOB_LITERAL=1 
> -DSQLITE_OMIT_DATETIME_FUNCS=1 -DSQLITE_OMIT_EXPLAIN=1 
> -DSQLITE_OMIT_FOREIGN_KEY=1 -DSQLITE_OMIT_PROGRESS_CALLBACK=1 
> -DSQLITE_OMIT_TRACE=1 -DSQLITE_OMIT_TRIGGER=1 -DSQLITE_OMIT_UTF16 
> -DSQLITE_OMIT_VIEW=1 -DSQLITE_OS_UNIX=1 -I. -I../sqlite-latest/src 
> -D_HAVE_SQLITE_CONFIG_H -DNDEBUG -DSQLITE_THREADSAFE=0 
> -DSQLITE_THREAD_OVERRIDE_LOCK=-1 -DSQLITE_OMIT_LOAD_EXTENSION=1 -c 
> sqlite3.c -o sqlite3.o >/dev/null 2>&1

This looks like a repeat of the previous command with the exception of 
the a different output directory and it drops the -fPIC -DPIC options. Why?


> ./libtool --mode=link gcc  -g -O3 -DSQLITE_ENABLE_RTREE=1 
> -DTEMP_STORE=2 -DSQLITE_DEFAULT_CACHE_SIZE=1000000 
> -DSQLITE_DEFAULT_PAGE_SIZE=32768 -DSQLITE_OMIT_ALTERTABLE=1 
> -DSQLITE_OMIT_ANALYZE=1 -DSQLITE_OMIT_ATTACH=1 
> -DSQLITE_OMIT_AUTHORIZATION=1 -DSQLITE_OMIT_AUTOVACUUM=1 
> -DSQLITE_OMIT_BLOB_LITERAL=1 -DSQLITE_OMIT_DATETIME_FUNCS=1 
> -DSQLITE_OMIT_EXPLAIN=1 -DSQLITE_OMIT_FOREIGN_KEY=1 
> -DSQLITE_OMIT_PROGRESS_CALLBACK=1 -DSQLITE_OMIT_TRACE=1 
> -DSQLITE_OMIT_TRIGGER=1 -DSQLITE_OMIT_UTF16 -DSQLITE_OMIT_VIEW=1 
> -DSQLITE_OS_UNIX=1 -I. -I../sqlite-latest/src -D_HAVE_SQLITE_CONFIG_H 
> -DNDEBUG   -DSQLITE_THREADSAFE=0 -DSQLITE_THREAD_OVERRIDE_LOCK=-1 
> -DSQLITE_OMIT_LOAD_EXTENSION=1   -o libsqlite3.la sqlite3.lo  \
>                   -rpath "/usr/local/lib" -version-info "8:6:8"
> libtool: link: gcc -shared  .libs/sqlite3.o      -Wl,-soname 
> -Wl,libsqlite3.so.0 -o .libs/libsqlite3.so.0.8.6
> /usr/bin/ld: .libs/sqlite3.o: relocation R_X86_64_PC32 against 
> `sqlite3CreateView' can not be used when making a shared object; 
> recompile with -fPIC

This is a linker error referring to the first of the functions that 
appear to be referenced even though they were omitted. I don't know what 
to make of the hint to recompile with -fPIC, since the file in 
.libs/sqlite3.o was compiled with that option.

> /usr/bin/ld: final link failed: Bad value
> collect2: ld returned 1 exit status
> make: *** [libsqlite3.la] Error 1
> 

The link failed so the make failed.

Dennis Cote
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to