aarch64 linux gnu和aarch64 linux android库之间的差异
我想在Android上使用一个为arm64编译的共享库。我将.so文件放在aarch64 linux gnu和aarch64 linux android库之间的差异,android,shared-libraries,arm64,Android,Shared Libraries,Arm64,我想在Android上使用一个为arm64编译的共享库。我将.so文件放在aarch64 linux gnu文件夹中,但对于其他库,我有一个aarch64 linux android文件夹 这些为aarch64 linux gnu编译的库能否在arm64安卓设备上运行?这些名字确切地代表什么?我知道aarch64指的是arm64处理器体系结构,但我不知道这里的操作系统是如何关联的 谢谢大家! Android和ARM my有一些相同的库。基本上,SO文件必须能够找到它链接到的所有库才能运行,并且版
aarch64 linux gnu
文件夹中,但对于其他库,我有一个aarch64 linux android
文件夹
这些为aarch64 linux gnu编译的库能否在arm64安卓设备上运行?这些名字确切地代表什么?我知道aarch64
指的是arm64处理器体系结构,但我不知道这里的操作系统是如何关联的
谢谢大家! Android和ARM my有一些相同的库。基本上,
SO
文件必须能够找到它链接到的所有库才能运行,并且版本需要匹配,这样就不会出现任何中断。这是有风险的,通常在目标机器上编译整个程序是最安全的。您可以使用以下工具查看是否可以找到所有内容/缺少的内容:
ldd /path/to/file.so
这将为您提供一个库列表以及文件认为它们在哪里-或者???如果它找不到它。你需要仔细检查,看看结果是否正常
即使找到了所有依赖项,版本或体系结构中的不匹配也会导致程序在运行时中断。您需要广泛测试外部链接库的使用,即使这样,您也可能会错过一些破坏程序的案例。因此,如果可能的话,我会尝试获取源代码,并在目标机器上重新编译所有内容