Build configuration for TclSQLite with SQLite3MultipleCiphers

Prerequisites

C compiler = gcc version 10.2.0 (Rev6, Built by MSYS2 project)
Tcl build path = /c/src/tcl8.6.11/win
Tcl install path = /c/bin/tcl8.6.11
SQLite3 build path = /c/src/sqlite-autoconf-3340100/tea
SQLite3MultipleCiphers source path = /c/src/wxsqlite3-4.0.4/sqlite3secure/src

Tcl

./configure --prefix=(Tcl install path)
make install

Tk

./configure --prefix=(Tcl install path) --with-tcl=(Tcl build path)
make install

TclSQLite with SQLite3MultipleCiphers

Copy the files in (SQLite3MultipleCiphers source path) to (SQLite3 build path)/generic.
Open tclsqlite3.c and replace "sqlite3.c" by "sqlite3mc.c" in the line #4.

cd (SQLite3 build path)
./configure --enable-threads --prefix=(Tcl install path) --with-tcl=(Tcl build path) CFLAGS="-DCODEC_TYPE=CODEC_TYPE_AES128 -DSQLITE_USE_URI -msse4.2 -maes"
make install

Other notes

I could not make sqlite3 v3.8.2 independent from libgcc_s_dw2-1.dll with MinGW gcc v4.8.1.
I don't know the reason. But I could build it with nmake.
For example:

nmake -f makefile.vc TCLDIR=(Tcl install path) INSTALLDIR=(Tcl install path) OPTDEFINES="-DSQLITE_HAS_CODEC"

References

暗号化APIを有効にしたSQLite3のTclバインディングをコンパイルする

2 thoughts on “Build configuration for TclSQLite with SQLite3MultipleCiphers

  1. bruno

    Hi, thanks foryour work. Any chance of making a windows binary available for Tksqlite-AES128? I have a Tksqlite binary from rene at sourceforge but without encryption. Sorry if I have posted in the wrong place. Warmest regards.

    返信

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください