设置Cygwin + Android NDK + cocos2Dx与Eclipse一起使用

时间:2014-01-07 22:25:37

标签: android-ndk cygwin cocos2d-x

我正在关注此网站的教程: Monetizing Game Apps by Todd Perkins

我问的问题不需要访问所有文件。我已经研究了如何在堆栈溢出上解决这个问题并在下面进行了讨论

我已按照教程进行操作,并要求我:

  1. 安装Cygwin
  2. 下载Cocos2dx-2.0.1(我知道这已经过时了,但我不想处理弃用问题,直到我对环境更有信心)。
  3. 运行create-android-project.bat(工作正常)。
  4. 打开我创建的项目 - 并转移到proj.android并在Cygwin中运行build_native.sh。
  5. 然后我打开cygwin.bat,导航到myproject / proj.android并运行./build_native.sh
  6. 问题:

    $ ./build_native.sh 使用预建的外部 ./build_native.sh:line 74:/ cygdrive / c / android-ndk-r9c-windows-x86_64 / ndk-build:没有这样的文件或目录

    所以我查看了文件并仔细检查了我的更改:

    1. 在create-android-project.bat中我修改了以下变量:

      设置_CYGBIN = c:\ Cygwin64 \ bin

    2. 设置_ANDROIDTOOLS = c:\ Program Files(x86)\ ADT \ adt-bundle-windows-x86_64-20130219 \ sdk \ tools

      设置_NDKROOT = c:\ android-ndk-r9c-windows-x86_64

      1. 检查cygwin在myproject / proj.android / build_native.sh中抱怨的第74行:
      2. echo "Using prebuilt externals" $NDK_ROOT/ndk-build -C $GAME_ANDROID_ROOT \ NDK_MODULE_PATH=${COCOS2DX_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/prebuilt

        1. 仔细检查build_native.sh中指向NDK_ROOT的内容:

          NDK_ROOT = / cygdrive / C /机器人-NDK-R9C - 窗口x86_64的 COCOS2DX_ROOT = / cygdrive / C /用户/ DarkRaveDev /文档/ cocos2d的-X-2.0.1 GAME_ROOT = $ COCOS2DX_ROOT / chaara GAME_ANDROID_ROOT = $ GAME_ROOT / proj.android RESOURCE_ROOT = $ GAME_ROOT /资源

        2. 我的研究:

          我在SO上冲浪了很长时间,并尝试了以下内容:

          1. Notepad ++中的EOL转换,因此LF适用于build_native.sh
          2. 的窗口
          3. 某个地方的答案说我需要在安装cygwin时安装make包。我没有遇到这个问题,所以我不确定这是否适用。
          4. 我搜索了许多设置路径的方法 - NDK_ROOT
          5. 问题:

            我究竟做错了什么?是变量设置错误还是没有正确安装cygwin?

1 个答案:

答案 0 :(得分:1)

感谢所有评论的人! :)

这就是我最终要做的事情。

  1. 重新安装Cygwin :当您到达要安装的选择包页面时,请务必找到 DEVEL 并将安装操作从默认更改为安装。我知道它有很多megs,但它比梳理它更容易。如果您确实希望梳理它并获得所需内容,我建议您使用此网站:Installing a c++ compiler for windows
  2. 让您的路径变得简单:与建议的用户2359247一样。
  3. 最后运行create_android.bat,打开你的android项目。记住build_native.sh文件的路径位置并打开cygwin终端。
  4. 导航到cygwin中的路径,并使用sh build_native.sh运行该文件:此时一切都非常顺利。
  5. 注:

    此外,我继续使用我的ndk版本,即教程中的r9而不是r8,它没有给我任何打嗝。

    谢谢你!