在linux环境下编译android so库
(1) 配置Android NDK环境
https://developer.android.google.cn/ndk/downloads/older_releases.html
1.下载android-ndk64-r10b-linux-x86_64.tar.bz2,下载地址:http://dl.google.com/android/ndk/android-ndk64-r10b-linux-x86_64.tar.bz2
2. 把下载好的android-ndk64-r10b版本解压
3.配置环境变量命令:$sudo gedit ~/.bashrc
添加以下代码:
export NDK=/home/davebobo/android-ndk-r10b
export PATH=${PATH}:$NDK 保存关闭。
5.source ~/.bashrc使其修改的文件生效。
6.ndk-build看看咱们配置环境变量成功没,只要没出command not found就证明环境变量配置成功,如果成功显示如下,
(2) Android mk文件编写
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS)
# OpenCV
OPENCV_CAMERA_MODULES:=on
OPENCV_INSTALL_MODULES:=on
OPENCV_LIB_TYPE:=STATIC
#include D:\project\Android\OpenCV-2.4.10-android-sdk\sdk\native\jni\OpenCV.mk
include $(LOCAL_PATH)/opencv_android/jni/OpenCV.mk LOCAL_MODULE := facequality
LOCAL_SRC_FILES += facequality.cpp LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
LOCAL_CFLAGS += -ffast-math -lpthread -ldl -O3 -std=c++11
LOCAL_CFLAGS += -DBUILD_TBB=ON -DWITH_TBB=ON
LOCAL_LDFLAGS += -Wl,--gc-sections LOCAL_CFLAGS += -fopenmp
LOCAL_CPPFLAGS += -fopenmp
LOCAL_LDFLAGS += -fopenmp LOCAL_LDLIBS += -lz -llog -ljnigraphics include $(BUILD_SHARED_LIBRARY)
Application.mk 编写
#Application.mk 控制编译的版本
APP_STL:=c++_shared
APP_CPPFLAGS:=-frtti -fexceptions
APP_ABI := arm64-v8a
(3) 目录文件
(4) 编译
$ ndk-build
[arm64-v8a] Compile++ : facequality <= facequality.cpp
jni/facequality.cpp:116:1: warning: control may reach end of non-void function [-Wreturn-type]
}
^
1 warning generated.
[arm64-v8a] SharedLibrary : libfacequality.so
[arm64-v8a] Install : libfacequality.so => libs/arm64-v8a/libfacequality.so
在linux环境下编译android so库的更多相关文章
- linux环境下编译Android apk
Android源码目录下的build/envsetup.sh文件,描述编译的命令 - m: Makes from the top of the tree. - mm: Build ...
- ffmpeg学习笔记-Linux下编译Android动态库
Android平台要使用ffmpeg就需要编译生成动态库,这里采用Ubuntu编译Android动态库 文件准备 要编译生成Android需要以下文件 NDK ffmpeg源代码 NDK下载 NDK可 ...
- 在虚拟机linux环境下编译windows版adb fastboot
原文出自:http://blog.chinaunix.net/uid-20546441-id-1746200.html 我根据虚拟机编译遇到的问题进行一些添加 [前提条件] Linux Android ...
- 在Windows 环境下编译Qt静态库(QT5.32)
参考链接 Qt5.3 Tools and Versions MinGW ICU ActivePerl Qt 安装MinGW工具链环境 这里在Win32环境下要安装一个MinGW工具链,这里最好是先安装 ...
- Linux环境下编译并执行ava helloworld程序
原文:http://blog.lupaworld.com/home-space-uid-24466-do-blog-id-2578.html 已经学会怎样在Windows下怎样编辑,编译和运行Java ...
- Linux环境下使用Android NDK编译c/c++生成可执行文件
1.安装Android NDK至Linux(Lubuntu 16) 从网上下载 android-ndk-r13b-linux-x86_64.zip,本人将其解压至/home/guanglun/work ...
- Linux环境g++编译GDAL动态库
一.编译步骤 解压下载的GDAL源程序,并在命令行中切换到解压目录. tar -xzvf gdal-2.1.3.tar.gz cd gdal-2.1.3 GDAL可通过configure来实现一些自定 ...
- 分布式缓存技术memcached学习(一)——linux环境下编译memcahed
安装依赖工具 [root@localhost upload]# yum install gcc make cmake autoconf libtool 下载并上传文件 memcached 依 ...
- [转载]Linux 环境下编译 0.11版本内核 kernel
最近在看<.如果Clobber/Modify 为空,则其前面的冒号(:)必须省略. 2.如果Output,Input,Clobber/Modify都为空,Output,Input之前的冒号(:) ...
随机推荐
- android studio的汉化 教程 及解析
android studio的汉化 教程 及解析 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 313134555 @qq.c ...
- [POI2011]Rotacje na drzewie (2)/[BZOJ3702]二叉树
[POI2011]Rotacje na drzewie (2) 题目大意: 一棵有\(n\)个叶子结点的二叉树,每个叶子结点有一个权值,恰好是\(1\sim n\)的一个排列,你可以任意交换每一对子结 ...
- Oozie分布式工作流——EL表达式
oozie支持使用EL(expression language)表达式. 基本的EL常量 KB MB GB TB PB 基本EL函数 string firstNotNull(String value1 ...
- 290.单词模式。给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循相同的模式。(c++方法)
题目描述: 给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循相同的模式. 这里的遵循指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之 ...
- svn与git操作对比 (未来有空做一个 svn与git实战对比 )
svn是集中式的,git是分布式的,但是我们日常使用的都是按照集中式唯一服务器仓库的方式来去做的,最终我们的代码都要提交到一个唯一仓库中. 他们最大的区别是本地工作拷贝的工作方式不同, 一.svn本地 ...
- 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo(转)
热衷于开源框架探索的我发现ASP.NET MVC与jQuery easyUI的组合很给力.由于原先一直受Ext JS框架的licence所苦恼,于是痛下决心寻找一个完全免费的js框架——easyUI. ...
- Ubuntu16.04下安装和配置Redis
一.前提条件 需要连接互联网,然后执行sudo apt-get update更新软件包 二.执行安装命令 sudo apt-get install redis-server 执行后如下图所示,我们输 ...
- awstats日志分析
nginx日志格式设定,去掉如下行#号 #vim /usr/local/nginx/conf/nginx.conf log_format access '$remote_addr -$remote_u ...
- zookeeper logs and snapshot
来自:http://xstarcd.github.io/wiki/Cloud/zookeeper_log_snapshot.html 事务日志可视化转换 1 2 3 4 5 6 7 8 9 10 11 ...
- QueryRunner实战(query_update)、BeanList\BeanHandler、MapList\MapHandler、ScalarHandler
1.c3p0-config.xml <?xml version="1.0" encoding="UTF-8"?> <c3p0-config&g ...