Android ndk 删除“lib”前缀

问题描述 投票:0回答:1

我正在将一些本机代码编译到库中以在我的应用程序中使用。一切都很好,但有些事情困扰着我。

本机代码的输出添加了“lib”前缀,因此“mylibrary”变为“libmylibrary.so”,我已将其添加为“mylibrary”

我不能删除这个前缀吗?这可能听起来很奇怪,但请记住,我对编译本机代码或 c 方面的知识为零

android-ndk native
1个回答
1
投票

“lib” 前缀是 Unix 早期以来的命名约定。当链接器使用带有 -l 标志的共享对象时,需要此前缀,请参阅更多here。当您使用 System.loadLibrary() 时,Java 中也隐含了该前缀。 Android ApkBuilder 和系统安装程序也需要该前缀(请参阅详细信息此处)。

但是如果你真的想将文件命名为

“mylibrary.so”,可以创建这样的文件,并使用Java中的System.load(fullpath)加载它。您将自行负责此文件的部署。

© www.soinside.com 2019 - 2024. All rights reserved.