android - 如何链接 cpufeatures lib 以获取 native android 库?

标签 android c++ gcc android-ndk linker

我正在尝试将 android 的 cpu_features 链接到 native 库。
我直接使用 android 的 gcc 编译器作为交叉编译器。 (不是 ndk-build)。

我已经包含了 header ($NDK_PATH/sources/android/cpufeatures/cpu-features.h),但我没有看到预构建的 libcpufeatures.a 文件在 ndk 文件夹下的任意位置。
我怎样才能建立那个图书馆?或者在哪里可以找到它以便我可以正确链接它?

最佳答案

您可以只在您的项目中包含源文件 cpu-features.c,或者使用 gcc 手动构建它:

arm-linux-androideabi-gcc -c cpu-features.c -o cpu-features.o --sysroot=$SYSROOT
arm-linux-androideabi-ar rcs libcpufeatures.a cpu-features.o

它不需要任何特殊的编译器标志或额外的定义,但是当链接到它时,您可能需要添加 -ldl 因为它使用 dlopen

关于android - 如何链接 cpufeatures lib 以获取 native android 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30184717/

相关文章:

android - 动画 Android 窗口和 View

python - 异常TypeError: 'argument list must be a tuple'

在 C 中检查对 _Generic() 选择的支持

c - gcc 对其依赖项如此保守的真正原因是什么? ( MPFR, GMP, MPC )

c - 为什么 malloc 将 gcc 中的值初始化为 0?

java - 我想使用共享首选项保存,但应用程序崩溃了

java - 如何使用选定的微调值进行计算?

android - EditText - 以编程方式更改文本选择背景颜色

c++ - 我应该初始化抽象类的成员吗?

c++ - std::map 中的线程安全