指定 NDK 构建的目标架构
Specifying target architecture for NDK build
我正在尝试使用NDK构建一个包含本机代码的Android应用程序。我正在使用 cmake,因为它似乎是本机代码的首选构建系统。构建在链接期间失败,我收到以下消息,表示我链接的预构建库:"添加符号时出错:文件格式错误"。看看正在使用的工具链,它使用的是mips64el-linux-android-4.9。在库上调用 objdump 将显示格式为"文件格式 elf64-x86-64",这就是我想要的。如何告诉 Android Studio 为x86_64构建应用程序,以便它使用正确的工具链?我尝试将以下内容添加到我的应用程序的build.gradle文件中,但这并没有改变任何东西:
splits {
abi {
enable true
reset()
include "x86_64"
}
}
经过更多的实验,我能够通过向我的buildType添加一个带有abiFilters属性的ndk块来使其工作。例如:
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
ndk {
abiFilters "x86_64"
}
}
debug {
ndk {
abiFilters "x86_64"
}
}
}
相关文章:
- 如何使用ndk-build.cmd构建Android.so文件
- 如何(从固定列表中)选择一个数字序列,该序列将与目标数字相加
- Android NDK传感器向事件队列报告奇怪的间隔
- C++A*算法并不总是在路径中具有目标节点
- 基于树莓pi的tensorflow lite量化ssd目标检测
- 为测试目标创建具有不同源文件夹的文件
- 使用源向量作为目标
- 是否可以用C++/WinRT将windows 10.0.14393作为目标
- Android NDK 编译 LAME HAVE_MPGLIB > 'interface.h' 文件未找到
- 在 CMake 中为每个目标设置编译器/链接器标志
- qmake:检测目标位宽(32 位或 64 位)
- NDK:如何通过ndkr15c包含"RefBase.h"?
- Android NDK clang 编译器错误在 Windows 上显示'No such file or directory'
- 如何在 CMake 中对目标依赖项进行分组?
- 我的目标是编写一个程序来计算和存储字符串在字符数组中出现的位置
- 为什么使用 NDK 不能存在不同的 stl 实现?
- 如何为包含头文件的目标编写生成文件?
- 线性优化目标函数中的绝对值
- 指定 NDK 构建的目标架构
- Android Ndk错误没有规则使目标