`
chriszeng87
  • 浏览: 740428 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android ndk环境配置(包括CDT环境设置)

阅读更多

一、关于NDK
Android NDK全称:Native Development Kit,即本地开发包。 
1、NDK是一系列工具的集合。 
NDK提供了一系列的工具,这些工具对开发者的帮助是巨大的。 
它们能帮助开发者快速开发C(或C++)的动态库,并能自动将so库和java应用一起打包成apk。
NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,
开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so库。 
NDK可以自动地将so和Java应用一起打包,极大地减轻了开发人员的打包工作。 
2、NDK提供了一份稳定、功能有限的API头文件声明。 
Google明确声明该API是稳定的,在后续所有版本中都稳定支持当前发布的API。
从该版本的NDK中看出,这些API支持的功能非常有限,包含有:
C标准库(libc)、标准数学库(libm)、压缩库(libz)、Log库(liblog)。

二、NDK实例的实现
对于Windows环境下NDK的开发,如果使用的NDK是r7之前的版本,必须要安装Cygwin才能使用NDK;
从r7开始,Google的提供了一个ndk-build.cmd的脚本,可以直接用它编译,而不需要使用Cygwin了
只需要为Eclipse Android工程添加一个Builder,就能让Eclipse自动编译NDK。

本文是讲述NDK-r8e下的实现实例。
下面是在windows下为NDK配置自动编译的builder的过程(对于Linux,只需将ndk-build.cmd修改为ndk-build就可以了)。
(1)先下载安装NDK
下载地址:http://developer.android.com/sdk/ndk/index.html
下载后解压缩就可以用了。
(2)新建工程和jni文件夹
打开Eclipse,新建或导入一个Android工程(我的取名为NdkTest),在工程目录下新建jni文件夹;
该jni文件夹就用来保存NDK需要编译的文件代码等。
(3)新建并配置一个Builder:
 (a)Project->Properties->Builders->New,新建一个Builder。 
 (b)在弹出的【Choose configuration type】对话框,选择【Program】,点击【OK】: 
 (c)在弹出的【Edit Configuration】对话框中,配置选项卡【Main】。
      在“Name“中输入新builders的名称(我取名为Ndk_Builder)。
      在“Location”中输入nkd-build.cmd的路径。
      (我的是E:\adt-bundle-windows-x86-20130522\ndk-r8e\ndk-build.cmd,   路径不能有空格
        根据各自的ndk路径设置,也可以点击“Browser File System…”来选取这个路径)。
      在“Working Diretcoty”中输入项目工程的路径${workspace_loc:/project}
      (我的是${workspace_loc:/NdkTest},也可以点击“Browse Workspace”来选取本工程目录)。
  (d)【Edit Configuration】对话框中,配置选项卡【Refresh】。
      勾选“Refresh resources upon completion”,
      勾选“The entire workspace”,
      勾选“Recuresively include sub-folders”。
   (e)【Edit Configuration】对话框中,配置选项卡【Build options】。
       勾选“After a “Clean””,
      勾选“During manual builds”,
      勾选“During auto builds”,
      勾选“Specify working set of relevant resources”。 
      点击“Specify Resources…”
      勾选本工程的“jni“目录,点击”finish“。
点击“OK“,完成配置。到这里Eclipse就能自动调用NDK编译jni目录下的C/C++代码了。

 

出现的提示信息如下:
Multiple markers at this line
  - Syntax error
  - Type 'JNIEnv' could not be resolved
  - Type 'JNICALL' could not be resolved

是由于没有将jni.h导入的缘故,而这个文件在ndk的目录下面。所以,参照以下步骤:
Project Properties -> C/C++ General -> Path and Symbols
选择include标签,Add -> $Android_NDK_HOME/platforms/android-14/arch-arm/usr/include
且选中All languages.
最后Apply -> OK
这样错误就解决了。

 

5) Press Ctrl+n (or choose File->New->Other… from main menu) and selectConvert to a C/C++ Project.

This will convert your project into a mixed Java & C/C++ project rather than into pure C/C++ project (the name of the function is misleading).

Click Next. Then choose your project and below choose Makefile project and – Other Toolchain –. Click Finish.

After doing this Eclipse will ask you if you want to switch to C/C++ perspective. ChooseYes because otherwise you wouldn’t be able to set C/C++ build preferences.

6) Click on your project with right button and select Properties or press Alt+Enter

Properties windows will appear. Here you have to configure use of ndk-build instead of make all command and set proper include paths.

7) Choose C/C++ Build and configure ndk-build as a build command

In Builder settings fill ndk-build into Build command entry. You have to uncheck Use default build command. You also need to have ndk-build script in your PATH.

In Behaviour setting uncheck clean (ndk-build cleans project automatically on build and does not support separate clean command) and clear all text from build (ndk-build does not accept all as a parameter.

Click Apply to save settings.

8) Choose C/C++ General->Paths and Symbols and configure include path

In Includes tab choose GNU C or GNU C++ and click Add… button. Add path to include directory which is located in platforms/android-4/arch/arm/usr/include subdirectory of place where you’ve unpacked Android ndk. Include path depends on target for which you are compiling (android-4 in my case — i.e. Android 1.6).

Finally click Apply and OK and that is all. Now you can use all Eclipse power for editing your C/C++ sources. If you click Run or Debug Eclipse will compile C/C++ code as well as Java code and run it on device/emulator. However you will not be able to debug C/C++ code.

 

In Eclipse:

  • right click the project,
  • click properties
  • Expand "C/C++ general" the item in the left hand tree view by clicking the arror, (just clicking the item itself does not expand the suboptions)
  • From the suboptions select "Preprocessor Include Paths, Macros etc."
  • Click the tab "Providers" and check the box next to "CDT GCC Built-in Compiler Settings [ Shared ]".

 

转自:http://blog.csdn.net/gaojinshan/article/details/9464195

            http://mhandroid.wordpress.com/2011/01/23/using-eclipse-for-android-cc-development/

分享到:
评论

相关推荐

    非常强大的eclipse中android ndk开发环境的配置说明

    ### 非常强大的Eclipse中Android NDK开发环境的配置说明 #### 一、概述 本文档将详细介绍如何在Eclipse中配置Android NDK开发环境,并实现C/C++代码的自动编译以及通过Eclipse使用Ant生成JNI所需的头文件。配置流程...

    ubuntu Android NDK开发环境的搭建

    接下来,我们需要配置Eclipse的C/C++开发工具(CDT)来支持Android NDK。 1. **下载Eclipse CDT插件**:访问Eclipse官方网站的CDT下载页面(http://www.eclipse.org/cdt/downloads.php),下载与你的Eclipse版本相...

    Eclipse下安装Android开发环境NDK和CDT[借鉴].pdf

    - 配置NDK环境,将NDK的路径添加到系统的`Path`环境变量中。 7. **配置CDT(C/C++ Development Toolkit)** - 要在Eclipse中进行C/C++开发,需要安装CDT。在Eclipse的`Help->Install New Software`中,选择一个...

    Android NDK开发环境搭建PDF

    Android项目NDK环境配置** Android项目在集成NDK环境后,可以开始使用C/C++代码来编写Android应用的一部分逻辑。 - **4.1 .so文件Builder** .so文件是Linux和Android平台上的共享对象文件,类似于Windows上的DLL...

    ECLIPSE下的androidndk开发

    **3.1.5 Android NDK**:下载并解压NDK至合适的位置,配置环境变量使其可访问。 **集成步骤** 1. 在Eclipse中创建一个新的Android项目,例如名为"hello-jni"。 2. 将NDK示例项目的`jni`目录复制到新创建的项目中。...

    Android NDK Cygwin配置

    #### 三、配置NDK环境变量 在完成Cygwin的安装后,还需要进一步配置NDK的工作环境,这通常涉及到设置环境变量。 1. **找到NDK安装目录**:假设您已经下载并解压了Android NDK至某文件夹(例如`C:\Android\ndk-...

    Windows下Eclipse搭建AndroidNDK开发环境[整理].pdf

    在Cygwin中配置NDK环境变量是非常重要的一步骤,需要在Cygwin中设置NDK的路径,以便于NDK的命令可以被正确地执行。 Eclipse的配置 Eclipse是Android开发环境的核心组件,提供了一个集成的开发环境。Eclipse的配置...

    Eclipse+CDT+GDB调试android NDK程序

    #### 安装和配置CDT插件 1. **安装CDT**:在Eclipse中通过`Help > Install New Software`安装CDT插件。下载地址为`http://download.eclipse.org/tools/cdt/releases/indigo/`。安装所有组件以获得完整的功能。 2. ...

    Eclipse配置NDK环境

    Eclipse配置NDK环境是Android开发中一个常见的任务,它允许开发者在Eclipse中创建、编译和管理使用C或C++编写的本地代码。 首先,要正确配置NDK环境,首先需要下载并安装C/C++专用版的Eclipse,这是因为标准版的...

    windows_NDK搭建Android开发环境

    5. **配置ADT插件**:在Window->Preferences中设置Android SDK的路径,确保Eclipse能找到SDK。 6. **安装Android平台和组件**:通过Window->Android SDK Manager,选择并安装所需的目标Android版本和额外组件,如...

    NDK eclipse环境变量设置

    安装插件后,可能还需要在Eclipse中进行一些配置,以确保NDK环境变量被正确识别和使用。 在配置NDK eclipse环境变量时,还需要注意一些细节问题。例如,确保在不同的开发环境(例如Android Studio和Eclipse)中环境...

    Eclipse+CDT+GDB调试android_NDK程序

    【Eclipse+CDT+GDB调试Android NDK程序】是一种在Eclipse集成开发环境中,利用CDT(C/C++ Development Tooling)和GDB(GNU Debugger)进行原生代码调试的技术。Android NDK允许开发者在Android应用中使用C或C++编写...

    Eclipse集成Android NDK说明

    - **工程属性**:右键点击项目,选择 "Properties",然后在 "C/C++ Build" 菜单下配置 NDK 构建路径和设置。你需要指定 Android NDK 的位置,并配置构建规则,使得 Eclipse 能够识别并编译 JNI (Java Native ...

    windows+eclipse+cygwin+cdt+ndk配置

    总的来说,配置Windows上的Eclipse、Cygwin、CDT和NDK环境,主要是为了在Windows环境下进行C/C++的Android原生代码开发。通过Eclipse和CDT,我们可以得到一个强大的C/C++ IDE;Cygwin提供了Linux工具链,使得在...

    windows下eclipse集成cygwin编译android_NDK

    2. **配置 NDK 路径**:确保已经安装了 Android NDK,并将其添加到系统的 PATH 环境变量中。例如,如果你的 NDK 安装在 `F:\android\NDK\android-ndk-r4` 目录下,那么需要将该路径添加到 PATH 变量中。 3. **安装 ...

Global site tag (gtag.js) - Google Analytics