Android NDK:在jni/文件夹下直接添加了一个新的库模块后构建
Android NDK: build after added a new library module directly under jni/ folder
在我的Android NDK项目中,我曾经只有一个库模块:
jni/
Android.mk
... (more source files)
然后,我需要添加另一个新的库模块,它与现有的库模块没有连接。我的意思是他们是独立的。我直接在jni/
文件夹下添加了新库。
jni/
Android.mk
... (more source files)
new-lib/
Android.mk
... (more source files)
问题1:
我在我的Android项目下运行ndk-build
命令进行构建。但是新库根本没有构建。这是因为我需要在jni/文件夹下的Android.mk中声明new-lib
模块吗?如果是,如何申报?
问题2:当我加载新的lib时(假设模块名称为"newlib"),我应该使用吗
System.loadLibrary("new-lib/newlib");
或者只是
System.loadLibrary("newlib");
?
首先,您不运行android-ndk
命令,而是运行ndk-build
命令。
问题1:
您可以告诉您的顶级Android.mk
,即$PROJECT/jni/Android.mk,包括位于不同位置/子目录中的另一个Android.mk
。
如果在子目录中定义了任何Android.mk
文件,则必须将它们明确地包含在顶级Android.mk
中。有一个助手功能
include $(call all-subdir-makefiles)
只需将其添加到您的顶级Android.mk
文件中即可。这将包括当前文件路径的子目录中的所有Android.mk
文件。
问题2:
use System.loadLibrary("newlib");
无需指定路径。
相关文章:
- 函数向量_指针有不同的原型,我可以构建一个吗
- VSCode-有一个红色下划线,但程序构建和运行正确,并且出现配音错误
- 构建一个由C和C++文件组成的库
- 如何使用 samtools C API 构建一个简单的主.cpp文件
- 在一个解决方案中针对第三方静态库 (Creo) 的不同版本(版本)进行构建
- 在Qt/C++中从一个代码构建两个略有不同的项目
- 如何构建一个 setup.py 来编译C++使用 Python、pybind11 和 Mingw-w64 的扩展?
- 如何构建一个异常类来报告C++中的哪些文件和行号?
- 在 Visual Studio 中构建一个没有 C/C++ 运行时的静态库
- 创建一个类来访问和指定向量类型,并构建一个获取位置并为其分配区域的类
- 下一个云桌面客户端构建过程
- 将vector<vector<double>>从x86平台中创建的一个进程发送到x64中构建的另一个进程的最快方法是什么
- cmake在构建过程中使用另一个工具检测标志
- 使用步骤c++构建一个向量
- 如何制作一个根据拉取请求关闭和打开功能的构建系统?
- 为什么它无法在 c++ 中全局声明一个构建为 dll 文件的类?
- 为什么我们需要构建一个提升库,仅仅包含头文件还不够吗,因为提升是模板
- 我正在尝试构建一个简单的程序来从 mysql 数据库中读取信息
- 可视化合并一个vc++和一个c++构建器项目
- 创建一个构建框架来支持编译支持多个平台的代码