2

MacOS 64bit で SQLCIPHER をコンパイルすると

./configure --enable-tempstore=yes CFLAGS="-DSQLITE_HAS_CODEC -DSQLITE_TEMP_STORE=2" LDFLAGS="/Users/administrator/Documents/openssl/lib/libcrypto.a"

32 ビットの liblibsqlite3.a を取得しますが、64 ビットの libsqlite3.a が必要です

どうすればこれを行うことができますか?

4

2 に答える 2

8

SQLCIPHER の新しいバージョンでは、OpenSSL は不要になりました。

最初にビルドを構成する必要があります。これらは、暗号プロバイダーとして SSL ではなく CommonCrypto の推奨設定です。

./configure --enable-load-extension --enable-tempstore=yes \
--with-crypto-lib=commoncrypto \
CFLAGS="-DSQLITE_HAS_CODEC -DSQLITE_ENABLE_FTS3" \ LDFLAGS="/System/Library/Frameworks/Security.framework/Versions/Current/Security"

次に、それを作成する必要があります。

make

64 ビットの静的にリンクされた SQLLite ライブラリが得られます。

于 2015-11-25T18:02:01.210 に答える
0

libcrypto.aOpenSSL を自分で構築しているように見えるため、64 ビット バージョンに対してリンクしていることを確認しましたか? ./Configure darwin64-x86_64-ccx86_64 のソースから OpenSSL をビルドする場合は、実行する必要があります。システムで見つかった OpenSSL のバージョンには、アーキテクチャの i386 と x86_64 の両方のバージョンが含まれている必要があるため、OpenSSL を再構築する必要はありません。file .libs/sqliteコンパイル後に実行して出力を表示できますか?

于 2013-04-23T16:40:01.707 に答える