Android平台JNI程序编译之openssl

一. 安装ndk
1. 下载最新ndk
2. 解压
3. 配置环境变量
a. vim ~/.baserc
b. NDK=~/android-ndk
c. export NDK
4. 使环境变量生效
a. source ~/.baserc
二. 编译openssl
1. 下载开源的openssl-android
(1). 网址
a. https://github.com/guardianproject/openssl-android
(2). 版本
a. 现在(20140411)的版本为1.0.0a
2. 编译
(1). 此开源的代码可直接编译
a. $NDK/ndk-build
(2). 动态库
a. 直接编译,编译完成后将在libs下生成libcrypto和libssl的动态库
(3). 静态库
a. 修改include $(BUILD_SHARED_LIBRARY)为include $(BUILD_STATIC_LIBRARY)
b. $NDK/ndk-build
3. 其他参考(中国网友)
(1). 网址
a. http://download.youkuaiyun.com/source/3408214
(2). 修改(此网友改变的有点错误)
a. myApp下的Androdi.mk
include $(CLEAR_VARS)该句必须加在LOCAL_PATH := $(call my-dir)的下一句,不能在local_c_includes :=之后,否则编译不出来
b. 必须添加库连接LOCAL_LDLIBS :=  -L$(SYSROOT)/usr/lib -llog -lz -ldl否则链接不过
c. openssl库的连接顺序为LOCAL_STATIC_LIBRARIES := libcrypto-static libssl-static,不可乱
三. 备注
1. 如出现未定义出错,可能是由于没有连接其他库的原因,比如LOCAL_LDLIBS := -lz –ldl
2. 如出现链接出错,也有可能是openssl的两个库链接顺序LOCAL_SHARED_LIBRARIES := libssl-static libcrypto-static
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值