NDK编译c++代码

本文介绍了如何在Android环境下使用NDK安装和创建C++项目。首先,从官方下载并安装NDK,接着创建项目目录和jni文件夹,编写C++代码。为了本地编译,需要安装GCC或Clang。文章还展示了Android.mk配置文件示例,用于构建共享库,并提供了Unity兼容的C++代码示例。最后,通过执行ndk-build命令完成编译,将库文件放入Unity的Plugins目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

步骤一:安装 NDK

首先,确保你已经下载并安装了最新版本的 Android NDK。可以从 Android 官方网站 NDK上获取最新的 NDK 发行版。

步骤二:创建 NDK 项目目录

在你选择的位置创建一个新的目录来作为你的 NDK 项目的根目录。例如,可以在你的计算机上创建一个名为 “NDK” 的目录。

步骤三:编写 C++ 代码

在根目录下创建一个名为 “jni” 的目录。在该目录下,创建你的 C++ 代码文件(例如,MyDLL.cpp)。可以使用任何文本编辑器来编写代码。

如果你希望在本地使用 NDK 编译 C++ 代码,你需要安装 g++ 或 Clang/LLVM 等 C++ 编译器工具链。

对于 GCC 工具链,你可以通过安装 GNU Compiler Collection(GCC)来获取 g++。GCC 是一个功能强大的编译器套件,支持多种编程语言,包括 C、C++、Java、Fortran 等。

对于 Clang/LLVM 工具链,你可以通过安装 Clang 来获取 C++ 编译器。Clang 是一个开源的 C/C++/Objective-C 编译器,它被设计成高性能、易于使用和可扩展的编译器。

无论你选择使用哪种工具链,确保你的环境中安装了适当的 C++ 编译器,以便在本地编译和构建 NDK 项目。

在这里插入图片描述
Android.mk文件

LOCAL_PATH := $(call my-dir)
export NDK_PROJECT_PATH= LOCAL_PATH/../

include $(CLEAR_VARS)

# 设置库名称
LOCAL_MODULE := MyDLL

# 添加源文件
LOCAL_SRC_FILES := MyDLL.cpp

include $(BUILD_SHARED_LIBRARY)

我这里是导出库给Unity用的 所以c++代码是

MyDLL.h

#if defined(_WIN32) || defined(_WIN64)
#define UNITY_CPP __declspec(dllexport)
#else
#define UNITY_CPP __attribute__((visibility("default")))
#endif

#ifdef __cplusplus
extern "C" {
#endif

    UNITY_CPP int add(int a, int b);

#ifdef __cplusplus
}
#endif

MyDLL.cpp

#if defined(_WIN32) || defined(_WIN64)
#define UNITY_CPP __declspec(dllexport)
#else
#define UNITY_CPP __attribute__((visibility("default")))
#endif

#ifdef __cplusplus
extern "C" {
#endif

    UNITY_CPP int add(int a, int b);

#ifdef __cplusplus
}
#endif

然后打开终端 cd到NDK目录执行ndk-build
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ok编译完成 直接复制到Unity的Plugins下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值