Android Story

[NDK] OpenSSL CrossCompile

WhiteDuck 2019. 5. 22. 13:59

https://github.com/lhjnano/openssl_build_for_android

[ 작성일자 ]

 - 19.05.22(화)

 

[ 환경 ]

 - Ubuntu 16.04

 

[ 참고 ]

- openssl build : https://github.com/akontsevich/openssl-android-build

 

 

1) NDK 다운로드 

 - ndk-10e 다운로드 

https://developer.android.com/ndk/downloads/older_releases.html?hl=ko

 

NDK 아카이브  |  Android NDK  |  Android Developers

이 페이지에서는 Android NDK의 아카이브에 보관된 릴리스 및 사용되지 않는 릴리스를 제공합니다. 이들은 정보 제공 및 보관용으로만 제공됩니다. 최신 Android NDK는 여기에서 가져올 수 있습니다.

developer.android.com

 

2) jdk 다운로드

$ sudo apt-get install default-jdk
#check
$ java -version

 

3) 크로스 컴파일

$ git clone https://github.com/akontsevich/openssl-android-build.git
$ cd openssl-android-build
$ export OPENSSL_VERSION="openssl-1.0.2o"
$ ./generate-headers.sh

# check my ndk home
$ export ANDROID_NDK_HOME=~/Android/android-ndk-r10e
$ ./build-android.sh 

 

4) 결과

./libs/android/
├── arm64-v8a
│   ├── libcrypto.a
│   ├── libcrypto.so
│   ├── libssl.a
│   └── libssl.so
├── armeabi
│   ├── libcrypto.a
│   ├── libcrypto.so
│   ├── libssl.a
│   └── libssl.so
├── armeabi-v7a
│   ├── libcrypto.a
│   ├── libcrypto.so
│   ├── libssl.a
│   └── libssl.so
├── mips
│   ├── libcrypto.a
│   ├── libcrypto.so
│   ├── libssl.a
│   └── libssl.so
├── mips64
│   ├── libcrypto.a
│   ├── libcrypto.so
│   ├── libssl.a
│   └── libssl.so
├── x86
│   ├── libcrypto.a
│   ├── libcrypto.so
│   ├── libssl.a
│   └── libssl.so
└── x86_64
    ├── libcrypto.a
    ├── libcrypto.so
    ├── libssl.a
    └── libssl.so

 

5) 결과물 (댓글 피드백)

https://github.com/lhjnano/openssl_build_for_android

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형