Сборка SQLCipher для Windows

Я не могу собрать sqlcipher в Windows, выполнив следующие шаги.

install Win32 OpenSSL v0.9.8m
install TclTk
rename MINGWPATH/bin/tclsh84.exe  to  tclsh.exe

cd sqlcipher
$ ./configure --disable-tcl --disable-amalgamation 

CFLAGS="-DSQLITE_HAS_CODEC -I../OpenSSL/include /c/Windows/System32/libeay32.dll"
$ make
$ make dll
$ make install

На этапе ссылки gcc выдает такую ​​ошибку:

libtool: link: gcc -g -O2 -DSQLITE_OS_WIN=1 -I. -I./src -I./ext/rtree -D_HAVE_SQ
LITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_OMIT_LOAD_E
XTENSION=1 -DHAVE_READLINE=0 -o .libs/sqlite3.exe ./src/shell.c  ./.libs/libsqli
te3.a -lpthread -L/usr/local/lib
./.libs/libsqlite3.a(func.o): In function `sqlite3RegisterBuiltinFunctions':
c:\sqlcipher/./src/func.c:1439: **undefined reference to `sqlcipher_exportFunc**'
collect2: ld çıkış durumu 1 ile döndü
make: *** [sqlite3.exe] Error 1

person Community    schedule 11.04.2012    source источник


Ответы (1)


Вы забыли определить SQLITE_TEMP_STORE, как указано в документе.

Я могу подтвердить, что он работает без сбоев на Ubuntu 12.04 LTS с последним исходным кодом на github:

введите здесь описание изображения

Вкратце для динамического связывания:

./configure --enable-tempstore=yes CFLAGS="-DSQLITE_HAS_CODEC -DSQLITE_TEMP_STORE=2" LDFLAGS="-lcrypto"

person daisy    schedule 24.04.2012