armeabi和armeabi-v7a之间的区别

据我所知,Android NDK支持的两种ARM体系结构之间的区别仅在于支持CPU指令集。 这真的是吗? 在调用约定或系统调用顺序或其他方面没有区别吗?

我想知道如果我将一个模块编译到一个ARM目标文件(具体而言,使用非NDK – Free Pascal编译器),将ARMv6指定为体系结构,然后将其链接到armeabi和armeabi-v7a共享库,会发生什么情况。 FPC位不应该执行系统调用和Java调用,除非通过我自己的基于C的接口。

编辑:一个hello世界库,用FPC for ARM编译,链接并在ARMv7a模拟器下运行。

Solutions Collecting From Web of "armeabi和armeabi-v7a之间的区别"

您当然可以在v7上运行armeabi共享库,您可以从另一个模块调用其导出的函数。 所以,为了安全起见,我会从你的Pascal代码创build一个单独的.so文件,坚持armeabi(也许有一些C / C ++包装),并使用这个共享库armeabi和armeabi-v7a库。 以正确的顺序加载所有东西最简单的方法就是使用

 System.loadLibrary("pascal"); // armeabi System.loadLibrary("c++"); // the platform will choose armeabi or armeabi-v7a