http://wiki.openssl.org/index.php/Android


1. .bashrc 파일을 다음과 같이 설정한다.

#

# for android

#

export _ANDROID_ARCH=arch-arm

export _ANDROID_EABI=arm-linux-androideabi-4.8

export _ANDROID_API=ndroid-9

export ANDROID_SDK_ROOT=/android/adt/sdk

export ANDROID_NDK_ROOT=/android/ndk

export ANDROID_TOOLCHAIN=/android/ndk/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin

  • _ANDROID_ARCH : ARM 기반이냐, X86 기반이냐?
  • _ANDROID_EABI : EABI 툴 버전. qt로 테스트 어플 빌드 결과 참조.
  • _ANDROID_API : API 레벨. qt로 테스트 어플 빌드 결과 참조.
  • ANDROID_SDK_ROOT : sdk가 설치된 곳 qt 설정 참조
  • ANDROID_NDK_ROOT : ndk가 설치된 위치. qt 설정 참조
  • ANDROID_TOOLCHAIN : gcc 파일(arm-linux-androideabi-gcc)의 위치.


2. openssl-1.0.1g.tar.gz 는 maks install을 할 때 에러가 나므로, openssl-1.0.1j.tar.gz 이상을 다운받아 진행하도록 한다.


3. setenv-android.sh 파일에서 다음을 수정하도록 한다. ANDROID_API 값은 환경 변수 설정(.bashrc)으로는 작동이 안된다.

  • from : _ANDROID_API="android-18"
  • to _ANDROID_API="android-9"

4. config를 실행할 때 shared 대신 no-shared 설정을 줘서 so 파일이 없어도 빌드가 되도록 한다

  • ./config shared -no-ssl2 -no-ssl3 -no-comp -no-hw -no-engine --openssldir=/usr/local/ssl/android-14/
  • ./config no-shared -no-ssl2 -no-ssl3 -no-comp -no-hw -no-engine --openssldir=/usr/local/ssl/android-9/