• eclipse环境NDK问题汇总


    1. 配置NDK路径设置

    可以在cygwin中通过vim修改,也可以在windows安装目录中修改 home<你的用户名>.bash_profile 文件中最后添加环境变量

    NDK=/cygdrive/e/Andriod/develop/android-ndk-r4

    export PATH=$PATH:$NDK

    其中NDK=/cygdrive/<你的盘符>/<android ndk 目录> ,"NDK"这个名字随便起,以后经常用不要太长。

    重启cygwin,输入:

    cd $NDK

    可进入ndk对应目录说明设置OK。

    2. JNI编译环境配置

    工程右键,点Properties->C/C++ Build的Building Settings中去掉Use default build command,然后输入${NDKROOT}/ndk-build.cmd

    在C/C++ Build中点击Environment,点Add...添加环境变量NDKROOT,值为NDK的根目录 E:androiddevelopandroid-ndk-r10d

    3. 出现的提示信息如下:

    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 -> E:android_swandroid-ndk-r10dplatformsandroid-19arch-armusrinclude
    且选中All languages.最后Apply -> OK 这样错误就解决了。

    4. 报错:Program "sh" not found in PATH

     C:cygwin64in目录添加到win7系统的path环境变量中。

    5. Android NDK: Your Android application project path contains spaces: 'E:/ ./ (x86)/' 

    Android NDK: The Android NDK build cannot work here. Please move your project to a different location.
    E:androidandroid-ndk-r10duild/core/build-local.mk:155: *** Android NDK: Aborting. . Stop.

    新建并配置一个Builder
     (1)点击Project->Properties->Builders->New,新建立一个Builder。在弹出的对话框上面点击Program,OK!如图四所示:

          
     

                                                         (图四)
    (2)在弹出的对话框【Edit Configuration】中,配置选项卡【Main】:
          Location中需要填入nkd-build.cmd的路径(NDK安装目录下)。
          Working Diretcoty中需要填入TestNDK的工程根目录。
           如图五所示:

          

                                        (图五)
    (3)配置选项卡【Refresh】,如图六所示:
          勾选“Refresh resources upon completion”,
          勾选“The entire workspace”,
          勾选“Recuresively include sub-folders”。

        

                                          (图六)
    (4)配置选项卡【Build Options】,如图七所示:
          勾选“After a “Clean””,
          勾选“During manual builds”,
          勾选“During auto builds”,
          勾选“Specify working set of relevant resources”。
          点击“Specify Resources…”勾选TestNDK工程的“jni“目录 ,Finish!

          保存设置,OK!

          

                                         (图七)

    (5)Project->clean->选择工程->点击OK。当在console里面看到如图八所示的信息,则表示一切正常,此时就已经是自动编译代码了。

            

     6. 自己测试的 eclipse ndk 工程设置,该工程还作为library,被其他工程调用

    设置完之后,选择eclipse的Project->clean...,则先clean工程,再运行该Builder,调用ndk-build.cmd编译jni代码。

    详细的设置如下图所示:

    别的工程引用该library,开发时需要查看该library的源码,只要将该library源码和该工程进行关联即可。如下所示:

  • 相关阅读:
    复制文字时自动加版权
    Linux安装Docker
    ThreadLocal 理解
    Spring多数据源动态切换
    [LOJ#500]「LibreOJ β Round」ZQC的拼图
    [JLOI2015]装备购买
    「雅礼集训 2017 Day4」洗衣服
    [BJWC2011]元素
    [51nod1577]异或凑数
    [ARC101B]Median of Medians
  • 原文地址:https://www.cnblogs.com/wi100sh/p/4330969.html
Copyright © 2020-2023  润新知