cmake交叉编译android(转)
生成cmake编译所需的文件
#-H指向CMakeLists.txt文件父级目录
#-B指向中间产物目录
#-DCMAKE_LIBRARY_OUTPUT_DIRECTORY指向so输出目录
#-DCMAKE_TOOLCHAIN_FILE指向android.toolchain.cmake文件,可以使用ndk自带的,也可以使用clone下来的项目中的文件
#-DANDROID_NDK指向ndk目录
#-DANDROID_ABI定义目标cpu结构,取值armeabi,armeabi-v7a,arm64-v8a,x86,x86_64,mips,mips64中的一个
#-DCMAKE_BUILD_TYPE定义构建类型,取值Debug或Release,Release构建做-O3三级优化
#-DANDROID_PLATFORM定义最低api版本
#-DANDROID_TOOLCHAIN表示交叉编译链类型,取值gcc或者clang,gcc已经被废弃
#-DANDROID_STL指明使用的stl
#-DCMAKE_C_FLAGS代表c编译器参数
#-DCMAKE_CXX_FLAGS代表c++编译器参数
#更多参数见google官方文档 https://developer.android.com/ndk/guides/cmake.html
#如果需要使用ninja构建,追加-GAndroid Gradle - Ninja参数,该参数标准cmake可执行文件不支持,只有sdk下的cmake支持 /Users/lizhangqu/AndroidSDK/cmake/3.6./bin/cmake \
-H"../jni" \
-B"../build/android/armeabi-v7a" \
-DANDROID_ABI="armeabi-v7a" \
-DANDROID_NDK="/Users/lizhangqu/AndroidNDK/android-ndk-r14b" \
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY="../build/android/libs/armeabi-v7a" \
-DCMAKE_BUILD_TYPE="Release" \
-DCMAKE_TOOLCHAIN_FILE="/Users/lizhangqu/AndroidNDK/android-ndk-r14b/build/cmake/android.toolchain.cmake" \
-DANDROID_PLATFORM="android-14" \
-DANDROID_TOOLCHAIN="clang" \
-DCMAKE_C_FLAGS="-fpic -fexceptions -frtti" \
-DCMAKE_CXX_FLAGS="-fpic -fexceptions -frtti" \
-DANDROID_STL="c++_static" \
cmake交叉编译android(转)的更多相关文章
- CMake交叉编译配置
		
很多时候,我们在开发的时候是面对嵌入式平台,因此由于资源的限制需要用到相关的交叉编译.即在你host宿主机上要生成target目标机的程序.里面牵扯到相关头文件的切换和编译器的选择以及环境变量的改变等 ...
 - 哪位大兄弟有用 cMake 开发Android ndk的
		
一直用 Android studio 开发ndk,但是gradle支持的不是很好,只有experimental 版本支持 配置各种蛋疼.主要每次新建一个module都要修改配置半天.之前也看到过goo ...
 - 使用ndk交叉编译android各平台版本的第三方库
		
只要弄明白了ndk-bundle的目录结构,交叉编译的基本原理就可以自行编写脚本去编译了.从仓库拿下代码包后,一般在linux平台下编译当前平台使用的库,只要使用其自动配置脚本configure进行平 ...
 - CMake 交叉编译
		
CMake 交叉编译 交叉编译就是说在平台 A (宿主机)上编译出可以在平台 B (目标机) 上运行的程序,比如在 x86 上编译 ARM 程序 要交叉编译首先要去下载目标平台的工具链,比如要编译 A ...
 - cmake编译android平台的libPoco
		
1.下载源代码,解压到POCO-1.7.8-ALL 2.从$ANDROID_NDK\cmake下复制android.toolchain.cmake AndroidNdkGdb.cmake Androi ...
 - CMAKE交叉编译快速入门
		
cmake 工具 cmake 使用非常简单,最常用的用法是 cmake . 在当前目录执行cmake 官方帮助 -D <var>:<type>=<value> -D ...
 - 如何用CMake构建Android C++库
		
https://fireflytech.org/2017/11/04/compiling-cc-libraries-for-android/ https://blog.csdn.net/xhp2014 ...
 - 通过cmake在Android中调用c语言,且三方应用通过so库调用c语言
		
1. 新建JniUtils类实现native方法 2. 在build中执行clean project 再rebuild project 生成class文件. 注意:最新版本的AndroidStud ...
 - Ubuntu下VsCode+CMake 交叉编译
		
在安装配置好VsCode后,下载相关插件.如图: 其中CMake Tools是为了方便使用CMake的扩展工具. 在创建工程前,先在VSCode打开一个空的目录(你的Project目录),再对CMak ...
 
随机推荐
- 教你摆脱低级程序猿 项目中cocopads的安装使用
			
小农今天聊聊一款作为iOS开发者必备的第三方管理软件.希望程序猿朋友们看到小农的这篇文章后.可以真正的学会怎样灵活管理你项目中的第三方. (一)CocoaPods是什么? 首先我们来认识一下这款第三方 ...
 - Mac下使用XLD转换无损音乐Ape
			
最近想要给音乐库增加一些音乐,下载了一些Ape格式的无损音乐,但是无法直接导入到iTunes中,必须经过其他工具转换成苹果的无损格式,XLD就是这样一款工具.XLD的下载和安装非常方便,直接将APP拖 ...
 - Hype cycle(Gartner 成熟度曲线)
			
Hype cycle The hype cycle is a branded graphical presentation developed and used by the American ...
 - Java 文件路径相关
			
不得不说Java的文件路径弄得很复杂, 有编译目录和resource目录什么的和解释型语言(PHP)的就是不一样 搞了好几年java一直没认真去研究这些个破路径怎么回事, 每次都忘记, 梳理一下备忘 ...
 - PL2303 Windows8.1驱动
			
常用的USB转串口下载芯片驱动可以参照我这篇文章USB转串口 FT232/PL2303/CH340 驱动以及使用体会 ,今天有找出了那根串口线打算使用,由于系统已经换为Windows8.1 X64所以 ...
 - Verilog 加法器和减法器(7)
			
在计算机中浮点数 表示通常采用IEEE754规定的格式,具体参考以下文章. https://www.cnblogs.com/mikewolf2002/p/10095995.html 下面我们在Veri ...
 - ExtJS梦想之旅(八)--GridPanel和EditorGridPanel的使用
			
表格在web开发中会经常被使用到,是一种非常重要的组件,因此ExtJS在这方面做得也很出色,在这里也作为一个重点的组件来和大家分享,共同探讨一下. Ext.grid.GridPanel此类系基于Gri ...
 - Poly2Tri介绍[转]
			
https://blog.csdn.net/xys206006/article/details/83002326 这是Poly2Tri介绍的翻译博文.原文链接:http://sites-final.u ...
 - [leetcode]Valid Palindrome @ Python
			
原题地址:https://oj.leetcode.com/problems/valid-palindrome/ 题意: Given a string, determine if it is a pal ...
 - [leetcode]Word Break II @ Python
			
原题地址:https://oj.leetcode.com/problems/word-break-ii/ 题意: Given a string s and a dictionary of words ...