SolarisにSQLCipherをインストール

Error message

Deprecated function: The each() function is deprecated. This message will be suppressed on further calls in book_prev() (line 775 of /home/mambo/www/modules/book/book.module).

Solaris9にSQLCipherをインストールした。

 

■インストール前の準備

自分の環境の場合、LD_LIBRARY_PATHで/usr/local/lib等を指定しておく。

export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/usr/openwin/lib:/usr/dt/lib:/usr/sfw/lib:/usr/xpg4/lib:/usr/ccs/lib:/lib 

ついてでにPATHも。

export PATH=/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:/usr/local/krb5/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/sbin:/opt/SUNWvts/bin:/usr/openwin/bin:/usr/ucb:/usr/lib/vxvm/bin 

 

■インストールする順番

SQLCipherをインストールする前にtclをインストールした。

なぜなら、SQLCipherのコンパイルが通らず下のようなエラーが表示されたため。

make: *** [tclsqlite.lo] Error 1

 

■tclをインストールする

tclのソースをダウンロードする。

http://prdownloads.sourceforge.net/tcl/tcl8.5.4-src.tar.gz

解凍してからコンパイル、インストールを実行する。

$ cd tcl8.5.4/unix
$ ./configure
$ make
$ su -
# cd tcl8.5.4/unix
# make install

コンパイルの方法はこちら。

http://www.tcl.tk/doc/howto/compile.html

 

■SQLCipherのインストール

ソースをダウンロード

http://github.com/sqlcipher/sqlcipher

ページ右側の Downloadsをクリックして、Download as tar.gz ボタンでダウンロードする。

 

$ ./configure --enable-tempstore=yes CFLAGS="-DSQLITE_HAS_CODEC" LDFLAGS="/usr/local/lib/libcrypto.so"
$ make
$ su -
# make install
 

 

 ■メモ:SQLCipherのmakeでエラー

LDFLAGSの指定が

/usr/lib/libcrypt.so → 下のようなエラー

ld: fatal: Symbol referencing errors. No output written to .libs/sqlite3
collect2: ld returned 1 exit status
*** Error code 1
make: Fatal error: Command failed for target `sqlite3'

 /usr/local/lib/libcrypto.so → エラーなし