私は、https://github.com/eighthave/openssl-android にあるopen-sslソースを使用して、アンドロイドプロジェクトで使用できるライブラリを構築しています。 README.txtのに与えられた指示に従ってプラットフォーム2.1用のAndroid-opensslライブラリを構築する
、私は、Androidプラットフォームのバージョン2.2(レベル-8)
のためにそれをコンパイルすることができる午前しかし、私のアプリは2.1(レベル-7)互換性があるように、それを必要とします。
I試みdefault.propertiesファイル(https://github.com/eighthave/openssl-android/blob/master/default.properties)
1)設定された目標=アンドロイド-7
2)設定された目標とオプションを以下=アンドロイド-5
をしかし、私はそれをコンパイルするときコマンドndk-buildを使用すると、次のエラーが発生します。
Compile thumb : crypto <= dsa_vrf.c
Compile thumb : crypto <= dso_dl.c
Compile thumb : crypto <= dso_dlfcn.c
/Crypto/openssl-android/crypto/dso/dso_dlfcn.c: In function 'dlfcn_pathbyaddr':
/Crypto/openssl-android/crypto/dso/dso_dlfcn.c:445: error: 'Dl_info' undeclared (first use in this function)
/Crypto/openssl-android/crypto/dso/dso_dlfcn.c:445: error: (Each undeclared identifier is reported only once
/Crypto/openssl-android/crypto/dso/dso_dlfcn.c:445: error: for each function it appears in.)
/Crypto/openssl-android/crypto/dso/dso_dlfcn.c:445: error: expected ';' before 'dli'
/Crypto/openssl-android/crypto/dso/dso_dlfcn.c:455: error: 'dli' undeclared (first use in this function)
make: *** [obj/local/armeabi/objs/crypto/dso/dso_dlfcn.o] Error 1
エラーメッセージごとに、Dl_infoは定義されていません。しかし、dso_dlfcn.cファイルに移動すると、構造体の定義はすでに提供されています。 (https://github.com/eighthave/openssl-android/blob/master/crypto/dso/dso_dlfcn.c)
このコードは、デフォルトのプロパティファイルでtarget = android-8用にコンパイルされますが、android-7やandroid-5ではコンパイルされません。
このエラーを解決するために手伝ってください。アンドロイド2.1プラットフォームのためにそれをコンパイルするために、すべての変更を行う必要があることを私に教えてください。
ありがとうございます。
前にも、[OpenSSLのとAndroid](HTTPSを持っていません:// wiki.openssl.org/index.php/Android)をOpenSSL wikiに追加してください。 – jww