Android NDK: Application targets deprecated ABI(s): armeabi Open File
Error:(81) Android NDK: Application targets deprecated ABI(s): armeabi
Error:(82) Android NDK: Support for these ABIs will be removed in a future NDK release. 
当项目中使用到ndk时可能会爆出这个错误,原因是Android NDK从r16 beta1开始,不再支持 ARM5 (armeabi)。默认情况下,Android NDK不会构建ARM5版本。如果在Application.mk配置了构建ARM5版本,会收到类似以上的警告。
Android系统支持的CPU架构
- ARMv5:armeabi,32位
- ARMv7:armeabi-v7a,32位
- x86:x86,32位
- MIPS:mips,32位
- ARMv8:arm64-v8a,64位
- MIPS64:mips64,64位
- x86_64:x86_64,64位
解决方法如下:如果不需要支持ARM5,可以在APP_ABI列表里吧armeabi去掉。
Application.mk配置APP_ABI
Application.mk的参数APP_ABI用来配置Android系统支持的CPU架构。
支持所有架构
APP_ABI := all
支持所有32位架构
APP_ABI := all32
支持指定的架构
APP_ABI := armeabi,armeabi-v7a,x86,mips,arm64-v8a,mips64,x86_64
多个架构使用逗号隔开。
如果一定要用到armeabi,则在app/build.gradle文件下添加设置:
android {
    defaultConfig {
        // ...
        ndk {
            abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a' // 'x86', 'x86_64' may be added
        }
   }
   // ...
    task ndkClean(type: Delete) {
        // remove unused archs from build cache
        delete fileTree('.externalNativeBuild') {
            exclude defaultConfig.ndk.abiFilters.collect { '**/' + it }
        }
    }
    tasks.findByPath(':clean').dependsOn ndkClean
} 重要的是红色字体,将你有的架构包(除armeabi之外的)加入,没有就创建,放入armeabi中相同的so包。
(或者在Application.mk文件中设置APP_ABI:= armeabi armeabi-v7a)
参考:https://majing.io/posts/10000004121193Android NDK: Application targets deprecated ABI(s): armeabi Open File的更多相关文章
- Android NDK Application.mk(中文翻译)
		作者:阿宝 更新:2016-08-31 来源:彩色世界(https://blog.hz601.org/2016/07/26/android-NDK-application-mk/index.html) ... 
- Android NDK and OpenCV Development With Android Studio
		Android NDK and OpenCV Development With Android Studio Hujiawei 172 2014年10月22日 发布 推荐 0 推荐 收藏 4 收藏,5 ... 
- Android NDK调试出错Unknown Application ABI, Unable to detect application ABI's的解决方式
		今天在调试Android NDK的时候,ADT的控制台报了这个错误: Unknown Application ABI, Unable to detect application ABI's 在网上查了 ... 
- Android NDK开发指南---Application.mk文件和android.mk文件
		https://android.googlesource.com/platform/development/+/donut-release/ndk/docs/OVERVIEW.TXT https:// ... 
- Android NDK 学习之Application.mk
		Application.mk file syntax specification Introduction: This document describes the syntax of Applica ... 
- Android NDK编程之Android.mk和Application.mk
		Android编程使用NDK必须创建一个jni文件夹,并且jni文件里一般包含有C/C++的源码文件.Android..mk文件.Application.mk文件(可选),Android.mk文件的编 ... 
- Android: NDK中的Android.mk和Application.mk
		1. 简介 Android.mk 可用来描述要编译的某个具体模块的相关信息.比如:指定编译该模块时所需要的源文件.编译该模块时要链接的库文件.该模块编译完成后生成的库的名字等等.Applicatio ... 
- Android Studio -  No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
		错误提示: No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android 错 ... 
- Android NDK开发入门实例
		AndroidNDK是能使Android应用开发者把从c/c++编译而来的本地代码嵌入到应用包中的一系列工具的组合. 注意: AndroidNDK只能用于Android1.5及以上版本中. I. An ... 
随机推荐
- [nginx]location语法
			location语法 location语法格式 location [=|~|~*|^~] uri { .... } location [=|~|~*|^~] uri {....} 指令 匹配标识 匹配 ... 
- ZOJ Problem Set - 1004-Anagrams by Stack
			 唉!先直接上源码吧!什么时候有时间的再来加说明. #include<iostream> #include<vector> #include<stack> #i ... 
- CCZone
			/**************************************************************************** Copyright (c) 2010 coc ... 
- Android开发中adb命令的常用方法
			Android的SDK中提供了很多有用的工具,在开发过程中如果能熟练使用这些工具,会让我们的开发事半功倍.adb是SDK提供的一个常用的命令行工具,全称为Android Debug Bridge,用于 ... 
- redhat7.2 安装docker
			# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # sed -i ' ... 
- Vue.js使用-组件(上篇)
			1.什么是组件 组件可以理解为定义的一个view模块,可重复使用. 2.组件使用 1)创建组件 var myComponent = Vue.extend({ template: ' this is a ... 
- 【嵌入式】FS2410非操作系统外围资源测试
			在刚接触FS2410时,其实这个测试也没有多大意义,但是对于以后来说,当一个产品做成功时,产品测试还是一个必须经过的一个阶段,所以这个流程还是有必要走一下! 在非操作系统下,主要进行RTC测试,按键测 ... 
- Spring boot下添加filter
			https://www.cnblogs.com/OnlyCT/p/7133639.html ****************************************************** ... 
- LeetCode: Binary Tree Postorder Traversal  解题报告
			Binary Tree Postorder Traversal Given a binary tree, return the postorder traversal of its nodes' va ... 
- idea Error:(1, 10) java: 需要class, interface或enum,  未结束的字符串文字,Error:(55, 136) java: 非法字符: \65533
			1.未结束的字符串文字,Error:(55, 136) java: 非法字符: \65533 这些乱七吧八遭的错误如果很多的话 , 尝试 重新修改下生成目录 修改下语言等级 上述方法都不行 ,还报错 ... 
