在Eclipse中配置NDK-r7无需Cygwin
4星 · 超过85%的资源 需积分: 9 113 浏览量
更新于2024-09-12
收藏 20KB DOCX 举报
"这篇文章主要介绍了如何在Eclipse环境中配置NDK进行Android原生代码开发,无需安装Cygwin。从NDK的基本概念、作用到实际配置步骤进行了详细讲解,适用于NDK r7及更高版本的Windows环境。"
NDK(Native Development Kit)是Android平台的一个重要工具集,它允许开发者使用C或C++编写高性能、低级别的原生代码,以实现某些Java无法高效完成的任务,如图形处理、物理模拟等。NDK包括交叉编译器、构建工具和一套稳定的API头文件,简化了不同平台和CPU架构间的编译过程,并能够自动将原生库与Java应用打包。
NDK的核心组件包括:
1. **交叉编译器**:允许开发者在非目标平台(例如Windows上编译Android的C/C++代码)。
2. **构建系统**:通过.mk文件定义编译规则,自动处理不同CPU架构和平台的差异。
3. **稳定API**:提供一组有限但稳定的C库,如libc、libm、libz和liblog,确保跨版本兼容性。
在NDK r7之前,Windows用户需要安装Cygwin来运行NDK的构建命令。然而,从r7开始,Google提供了`ndk-build.cmd`批处理脚本,使得开发者可以直接在Windows环境中使用命令行编译原生代码,不再依赖Cygwin。
以下是在Eclipse中配置NDK自动编译Builder的步骤:
1. **下载并安装NDK**:访问Android Developer官网,下载NDK的最新版本(如r7),解压后备用。
2. **创建Android工程**:在Eclipse中新建一个Android项目,例如命名为`TestNdk`。
3. **创建jni目录**:在`TestNdk`工程根目录下创建一个名为`jni`的文件夹,此文件夹将存放C/C++源代码。
4. **配置Builder**:在Eclipse中,右键点击工程,选择`Properties`,进入`Builders`页面。点击`New`,选择`Program`,然后配置如下:
- **Name**: 自定义名称,例如`NDK Builder`。
- **Location**: 指向`ndk-build.cmd`的位置(通常是NDK解压后的路径,例如`<NDK_PATH>\ndk-build.cmd`)。
- **Working Directory**: 设置为`Project Workspace`,并输入工程的绝对路径(例如`${workspace_loc:/TestNdk}`)。
- **Arguments**: 输入`NDK的构建参数`,通常留空即可,因为`ndk-build`会默认读取`jni`目录下的`Android.mk`或`Application.mk`文件进行构建。
5. **设置构建顺序**:确保`NDK Builder`在`Java Builder`之前执行,这样Eclipse会在每次编译时先执行NDK构建。
6. **保存并测试**:保存设置,然后尝试修改`jni`目录下的源代码,查看Eclipse是否能自动编译并更新.so库。
在Linux环境下,配置类似,只需将`ndk-build.cmd`替换为`ndk-build`命令即可。
通过以上步骤,你可以在Eclipse中方便地进行NDK开发,无需额外安装Cygwin,简化了开发环境的搭建。同时,记得在`jni`目录下编写`Android.mk`或`Application.mk`文件,指定要编译的源代码、优化选项等,以便NDK正确构建原生库。
2011-05-01 上传
2014-08-16 上传
2019-04-03 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
crynoby
- 粉丝: 0
- 资源: 11
最新资源
- 探索AVL树算法:以Faculdade Senac Porto Alegre实践为例
- 小学语文教学新工具:创新黑板设计解析
- Minecraft服务器管理新插件ServerForms发布
- MATLAB基因网络模型代码实现及开源分享
- 全方位技术项目源码合集:***报名系统
- Phalcon框架实战案例分析
- MATLAB与Python结合实现短期电力负荷预测的DAT300项目解析
- 市场营销教学专用查询装置设计方案
- 随身WiFi高通210 MS8909设备的Root引导文件破解攻略
- 实现服务器端级联:modella与leveldb适配器的应用
- Oracle Linux安装必备依赖包清单与步骤
- Shyer项目:寻找喜欢的聊天伙伴
- MEAN堆栈入门项目: postings-app
- 在线WPS办公功能全接触及应用示例
- 新型带储订盒订书机设计文档
- VB多媒体教学演示系统源代码及技术项目资源大全