build sqlcipher circular utf.o dependency dropped.

52 views
Skip to first unread message

Stuk

unread,
Sep 3, 2010, 4:55:44 AM9/3/10
to SQLCipher Users
Hi, i try to build the new release code but i receive this message...

I not understand the problem! I use the same configure that i have
used for the past release...
i use

./configure --prefix=/c/Qt/2010.04/qt/src/plugins/sqldrivers/sqlcipher
--disable-tcl --disable-amalgamation CFLAGS="-DSQLITE_HAS_CODEC -I../
OpenSSL2/include /c/OpenSSL/bin/libeay32.dll"

Error is this:
make: Circular utf.o <- utf.o dependency dropped.
./libtool --mode=link gcc -DSQLITE_HAS_CODEC -I../OpenSSL2/include /
c/OpenSSL/
bin/libeay32.dll -DSQLITE_OS_WIN=1 -I. -I./src -D_HAVE_SQLITE_CONFIG_H
-DNDEBUG
-DSQLITE_THREADSAFE=1 -DSQLITE_THREAD_OVERRIDE_LOCK=-1 -
DSQLITE_OMIT_LOAD_EXTE
NSION=1 -o libsqlite3.la alter.lo analyze.lo attach.lo auth.lo
backup.lo bit
vec.lo btmutex.lo btree.lo build.lo callback.lo complete.lo ctime.lo
date.lo del
ete.lo expr.lo fault.lo fkey.lo fts3.lo fts3_expr.lo fts3_hash.lo
fts3_icu.lo ft
s3_porter.lo fts3_snippet.lo fts3_tokenizer.lo fts3_tokenizer1.lo
fts3_write.lo
func.lo global.lo hash.lo icu.lo insert.lo journal.lo legacy.lo
loadext.lo main.
lo malloc.lo mem0.lo mem1.lo mem2.lo mem3.lo mem5.lo memjournal.lo
mutex.lo mute
x_noop.lo mutex_os2.lo mutex_unix.lo mutex_w32.lo notify.lo opcodes.lo
os.lo os_
os2.lo os_unix.lo os_win.lo pager.lo parse.lo pcache.lo pcache1.lo
pragma.lo pre
pare.lo printf.lo random.lo resolve.lo rowset.lo rtree.lo select.lo
status.lo ta
ble.lo tokenize.lo trigger.lo update.lo util.lo vacuum.lo vdbe.lo
vdbeapi.lo vdb
eaux.lo vdbeblob.lo vdbemem.lo vdbetrace.lo wal.lo walker.lo where.lo
utf.o vtab
.lo crypto.lo \
-rpath "/c/Qt/2010.04/qt/src/plugins/sqldrivers/
sqlcipher/lib"
-version-info "8:6:8"
libtool: link: cannot build libtool library `libsqlite3.la' from non-
libtool obj
ects on this host: utf.o
make: *** [libsqlite3.la] Error 1

Stuk

unread,
Sep 3, 2010, 5:18:10 AM9/3/10
to SQLCipher Users
I have comparate this code of makefile (version 1.1.5 and 1.16 of
sqlcipher)


1.1.5 ->
# Object files for the SQLite library (non-amalgamation).
OBJS0 = alter.lo analyze.lo attach.lo auth.lo backup.lo bitvec.lo
btmutex.lo \
btree.lo build.lo callback.lo complete.lo ctime.lo date.lo \
delete.lo expr.lo fault.lo fkey.lo func.lo global.lo \
hash.lo journal.lo insert.lo legacy.lo loadext.lo \
main.lo malloc.lo mem0.lo mem1.lo mem2.lo mem3.lo mem5.lo \
memjournal.lo \
mutex.lo mutex_noop.lo mutex_os2.lo mutex_unix.lo mutex_w32.lo
\
notify.lo opcodes.lo os.lo os_unix.lo os_win.lo os_os2.lo \
pager.lo parse.lo pcache.lo pcache1.lo pragma.lo prepare.lo
printf.lo \
random.lo resolve.lo rowset.lo select.lo status.lo \
table.lo tokenize.lo trigger.lo update.lo \
util.lo vacuum.lo \
vdbe.lo vdbeapi.lo vdbeaux.lo vdbeblob.lo vdbemem.lo
vdbetrace.lo \
walker.lo where.lo utf.lo vtab.lo $(CRYPTOLIBOBJ)

1.1.6 ->
# Object files for the SQLite library (non-amalgamation).
LIBOBJS0 = alter.lo analyze.lo attach.lo auth.lo \
backup.lo bitvec.lo btmutex.lo btree.lo build.lo \
callback.lo complete.lo ctime.lo date.lo delete.lo expr.lo
fault.lo fkey.lo \
fts3.lo fts3_expr.lo fts3_hash.lo fts3_icu.lo fts3_porter.lo
\
fts3_snippet.lo fts3_tokenizer.lo fts3_tokenizer1.lo
fts3_write.lo \
func.lo global.lo hash.lo \
icu.lo insert.lo journal.lo legacy.lo loadext.lo \
main.lo malloc.lo mem0.lo mem1.lo mem2.lo mem3.lo mem5.lo \
memjournal.lo \
mutex.lo mutex_noop.lo mutex_os2.lo mutex_unix.lo
mutex_w32.lo \
notify.lo opcodes.lo os.lo os_os2.lo os_unix.lo os_win.lo \
pager.lo parse.lo pcache.lo pcache1.lo pragma.lo prepare.lo
printf.lo \
random.lo resolve.lo rowset.lo rtree.lo select.lo status.lo \
table.lo tokenize.lo trigger.lo \
update.lo util.lo vacuum.lo \
vdbe.lo vdbeapi.lo vdbeaux.lo vdbeblob.lo vdbemem.lo
vdbetrace.lo \
wal.lo walker.lo where.lo utf.o vtab.lo $(CRYPTOLIBOBJ)

So the 1.1.5 is utf.lo and the 1.1.6 is utf.lo, i try this change and
working....
BUT I NOT UNDERSTAND WHAT THIS CHANGE DOING...

Stephen Lombardo

unread,
Sep 3, 2010, 7:57:26 AM9/3/10
to sqlc...@googlegroups.com
Hi Stuk,

This looks like an issue that was introduced into the upstream SQLite in 3.7.2. The problem is that there is an explicit target for utf.lo. It appears that recent make versions seem perfectly able to figure this out and build correctly, as I was able to build and test successfully on the stock developer tools from snow leopard/ mingw 5.1.6 / and a recent linux centos distro before release. Out of curiosity, what version of make are you using?

Anyway, since this was a real inconsistency in the Makefile, we've resolved it in the SQLCipher repository. You can pull the latest off the 1.1.7 tag on github.


Let us know if that fixes the issue for you. Thanks!

Cheers,
Stephen

Stuk

unread,
Sep 3, 2010, 11:44:42 AM9/3/10
to SQLCipher Users
Yes, it work with change in utf.o.
My version of make is 3.81.
I compile under windows.

On 3 Set, 13:57, Stephen Lombardo <sjlomba...@zetetic.net> wrote:
> Hi Stuk,
>
> This looks like an issue that was introduced into the upstream SQLite in
> 3.7.2. The problem is that there is an explicit target for utf.lo. It
> appears that recent make versions seem perfectly able to figure this out and
> build correctly, as I was able to build and test successfully on the stock
> developer tools from snow leopard/ mingw 5.1.6 / and a recent linux centos
> distro before release. Out of curiosity, what version of make are you using?
>
> Anyway, since this was a real inconsistency in the Makefile, we've resolved
> it in the SQLCipher repository. You can pull the latest off the 1.1.7 tag on
> github.
>
> http://github.com/sjlombardo/sqlcipher/tree/v1.1.7
>
> Let us know if that fixes the issue for you. Thanks!
>
> Cheers,
> Stephen
>
Reply all
Reply to author
Forward
0 new messages