windwos 下编译minicap
一、参考github 介绍:https://github.com/openstf/minicap
Requirements (前提)
- NDK, Revision 10e (May 2015)
- make (http://gnuwin32.sourceforge.net/packages/make.htm ,Setup program 会自带依赖库文件)
- android studio 下安装。
Building(编译)
We include libjpeg-turbo as a Git submodule, so first make sure you've fetched it.(在minicap目录下执行git命令,如果没有git可以下载。)
git submodule init
git submodule update
You're now ready to proceed.
Building requires NDK, and is known to work with at least with NDK Revision 10e (May 2015). Older versions do not work due to the lack of .asm
file support for x86_64.
Then it's simply a matter of invoking ndk-build
. (最简单的方式..\Android\sdk\ndk-bundle目录下ndk-build.cmd)
ndk-build
You should now have the binaries available in ./libs
. (执行结果所在目录)
If you've modified the shared library, you'll also need to build that.(这个我还没试)
Make 编译cmd在minicap目录下执行make。如果不熟悉make命令,可以参考:http://www.cnblogs.com/kissfu/p/6343967.html。
makefile文件做了一些windows 系统的适应。
.PHONY: default clean prebuilt test NDKBUILT := \
libs/arm64-v8a/minicap \
libs/arm64-v8a/minicap-nopie \
libs/armeabi-v7a/minicap \
libs/armeabi-v7a/minicap-nopie \
libs/x86/minicap \
libs/x86/minicap-nopie \
libs/x86_64/minicap \
libs/x86_64/minicap-nopie \ default: prebuilt clean:
ndk-build clean
rm -rf prebuilt $(NDKBUILT):
ndk-build test:
@if exist "prebuilt/armeabi-v7a/bin" echo "ddd"
@if not exist "prebuilt/armeabi-v7a/bin1" echo "ddd1" # It may feel a bit redundant to list everything here. However it also
# acts as a safeguard to make sure that we really are including everything
# that is supposed to be there.
prebuilt: \
prebuilt/armeabi-v7a/bin/minicap \
prebuilt/armeabi-v7a/bin/minicap-nopie \
prebuilt/armeabi-v7a/lib/android-9/minicap.so \
prebuilt/armeabi-v7a/lib/android-10/minicap.so \
prebuilt/armeabi-v7a/lib/android-14/minicap.so \
prebuilt/armeabi-v7a/lib/android-15/minicap.so \
prebuilt/armeabi-v7a/lib/android-16/minicap.so \
prebuilt/armeabi-v7a/lib/android-17/minicap.so \
prebuilt/armeabi-v7a/lib/android-18/minicap.so \
prebuilt/armeabi-v7a/lib/android-19/minicap.so \
prebuilt/armeabi-v7a/lib/android-21/minicap.so \
prebuilt/armeabi-v7a/lib/android-22/minicap.so \
prebuilt/armeabi-v7a/lib/android-23/minicap.so \
prebuilt/armeabi-v7a/lib/android-24/minicap.so \
prebuilt/armeabi-v7a/lib/android-25/minicap.so \
prebuilt/arm64-v8a/bin/minicap \
prebuilt/arm64-v8a/bin/minicap-nopie \
prebuilt/arm64-v8a/lib/android-21/minicap.so \
prebuilt/arm64-v8a/lib/android-22/minicap.so \
prebuilt/arm64-v8a/lib/android-23/minicap.so \
prebuilt/arm64-v8a/lib/android-24/minicap.so \
prebuilt/arm64-v8a/lib/android-25/minicap.so \
prebuilt/x86/bin/minicap \
prebuilt/x86/bin/minicap-nopie \
prebuilt/x86/lib/android-14/minicap.so \
prebuilt/x86/lib/android-15/minicap.so \
prebuilt/x86/lib/android-16/minicap.so \
prebuilt/x86/lib/android-17/minicap.so \
prebuilt/x86/lib/android-18/minicap.so \
prebuilt/x86/lib/android-19/minicap.so \
prebuilt/x86/lib/android-21/minicap.so \
prebuilt/x86/lib/android-22/minicap.so \
prebuilt/x86/lib/android-23/minicap.so \
prebuilt/x86/lib/android-24/minicap.so \
prebuilt/x86/lib/android-25/minicap.so \
prebuilt/x86_64/bin/minicap \
prebuilt/x86_64/bin/minicap-nopie \
prebuilt/x86_64/lib/android-21/minicap.so \
prebuilt/x86_64/lib/android-22/minicap.so \
prebuilt/x86_64/lib/android-23/minicap.so \
prebuilt/x86_64/lib/android-24/minicap.so \
prebuilt/x86_64/lib/android-25/minicap.so \ prebuilt/%/bin/minicap: libs\%\minicap
if not exist "$(@D)" mkdir "$(@D)"
copy "$^" "$@" prebuilt/%/bin/minicap-nopie: libs\%\minicap-nopie
if not exist "$(@D)" mkdir "$(@D)"
copy "$^" "$@" prebuilt/armeabi-v7a/lib/%/minicap.so: jni\minicap-shared\aosp\libs\%\armeabi-v7a\minicap.so
if not exist "$(@D)" mkdir "$(@D)"
copy "$^" "$@" prebuilt/arm64-v8a/lib/%/minicap.so: jni\minicap-shared\aosp\libs\%/arm64-v8a\minicap.so #目标:前置条件("/"改为"\")
if not exist "$(@D)" mkdir "$(@D)" #路径需要加引号,目标的目录 如果不存在创建目录。
copy "$^" "$@" #所有前置条件 目标 ,$(@D) 和 $(@F) 分别指向 $@ 的目录名和文件名 prebuilt/x86/lib/%/minicap.so: jni\minicap-shared\aosp\libs\%\x86\minicap.so
if not exist "$(@D)" mkdir "$(@D)"
copy "$^" "$@" prebuilt/x86_64/lib/%/minicap.so: jni\minicap-shared\aosp\libs\%\x86_64\minicap.so
if not exist "$(@D)" mkdir "$(@D)"
copy "$^" "$@"
windwos 下编译minicap的更多相关文章
- windwos 下编译 qsqlibase 驱动(firebird 和 interbase)
编译环境:mingw-w64 使用qtcreator打开ibase.pro,ibase.pro位置例如:R:\qt-everywhere-opensource-src-4.8.5\src\plugin ...
- 不要着急改代码,先想想--centos 6.8下编译安装tmux
诸位读者新年好,2017开年第一篇博客,请允许我先问候一下看到这篇博客的诸位.写博客是我2017年定下的目标之一,希望我会坚持下去. 最近打算尝试一下tmux这个神器,于是有了这一篇关于思维方式的Bl ...
- [转] Windows下编译OpenSSL
简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...
- linux下编译gcc6.2.0
linux下编译gcc6.2.0 在archlinx的下gcc已经更新到6.2.1了,win10的WSL下还是gcc4.8.官方源没有比较新的版本,于是自己编译使用. GCC6的几个新特性 GCC 6 ...
- centos下编译安装lnmp
centos下编译安装lnmp 本文以centos为背景在其中编译安装nginx搭建lnmp环境. 编译安装nginx时,需要事先安装 开发包组"Development Tools" ...
- libCURL开源库在VS2010环境下编译安装,配置详解
libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...
- LINUX下编译安装PHP各种报错大集合
本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...
- Redhat环境下编译安装Google Bazel
Redhat环境下编译安装bazel 作者:Jack47 目前Google Bazel没有提供各个操作系统下的二进制安装包,只提供源代码,需要我们自己编译安装,详情可以见我翻译的中文版Google B ...
- linux下编译安装vim7.4并安装clang_complete插件
linux下编译安装vim7.4并安装clang_complete插件 因为debian里软件仓库中下载安装的vim是不支持python写的插件的(可以打开vim,在命令模式先输入:py测试一下),导 ...
随机推荐
- Openlayer3之绚丽的界面框架-Materialize
一群做C++的老伙计搞前端开发,徒手写html和css应该会折寿..在网上找了半天,Materialize算是用起来很方便的一款前端界面框架.Google的Material Design看起来感觉还是 ...
- Android项目实战(四十八):架构之组件化开发
什么要组件化开发? 看一下普通项目的结构 , 一个项目下有多个Module(左侧图黑体目录),但是只有一个application,0个或多个library(在每个medel下的build.gradle ...
- redis 数据库安装和基本使用
Redis 介绍: Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure server). Redis的键值可以包 ...
- 使用fiddler抓包手机请求数据
1.启动Fiddler,打开菜单栏中的 Tools > Fiddler Options,打开“Fiddler Options”对话框. 2.在Fiddler Options”对话框切换到“Con ...
- session,cookie,sessionStorage,localStorage的区别
浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式,可以利用cookie,session等跟服务端进行数据交互. 一.cookie和session cookie和session都是用来跟踪浏览器 ...
- 没有服务商如何购买ERP的序列号?
一.试用期(未过期) 站点版购买: 门店版购买: 二.试用期(使用时间<=15天) 三.试用期(已过期) 登录时会弹出以下弹窗 剩下的购买步骤与未过期时购买步骤一致 四.续费 剩下步骤与未过期时 ...
- 洗礼灵魂,修炼python(78)--全栈项目实战篇(6)—— 多级目录菜单之地址管理系统
相信各位都在在网上买过东西吧?那么今天我的主题就是写个在线购物系统,是不可能的,哈哈(后期确实有这个项目),那么购物都填写过快递地址吧?然后网上查个地址都有地址管理吧? 要求: 1.打印出省.市.县等 ...
- SSIS使用事务回滚
--创建表ttt Create table ttt ( ID INT PRIMARY KEY , NAME VARCHAR(50) ) --插入测试数据 INSERT INTO TTT VALUES ...
- MongoDB数据库简单操作
之前学过的有mysql数据库,现在我们学习一种非关系型数据库 一.简介 MongoDB是一款强大.灵活.且易于扩展的通用型数据库 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数 ...
- c++ 右值引用,move关键字
c++ move关键字 move的由来:在 c++11 以前存在一个有趣的现象:T& 指向 lvalue (左传引用), const T& 既可以指向 lvalue 也可以指向 rv ...