【问题标题】:Setting up Cygwin + Android NDK + cocos2Dx to work with Eclipse设置 Cygwin + Android NDK + cocos2Dx 以使用 Eclipse
【发布时间】:2014-01-25 19:42:37
【问题描述】:

我正在学习这个网站上的教程: 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

问题:

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

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

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

    设置_CYGBIN=c:\Cygwin64\bin

设置 _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 行:

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. 仔细检查 NDK_ROOT 在 build_native.sh 中指向的内容:

    NDK_ROOT=/cygdrive/c/android-ndk-r9c-windows-x86_64 COCOS2DX_ROOT=/cygdrive/c/Users/DarkRaveDev/Documents/cocos2d-x-2.0.1 GAME_ROOT=$COCOS2DX_ROOT/chaara GAME_ANDROID_ROOT=$GAME_ROOT/proj.android RESOURCE_ROOT=$GAME_ROOT/资源

我的研究:

我在 SO 上冲浪了很长一段时间,并从 SO 中尝试了以下操作:

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

问题:

我到底做错了什么?是变量设置不当还是cygwin没有正确安装?

【问题讨论】:

  • 您是否获得了与教程中相同版本的 NDK?看起来那是为r8 和您使用r9 编写的。
  • 在构建 native.sh 中提供您的 NDK_Path,如下所示 NDK_ROOT="D:\android-ndk-r8d"
  • @Elliot:我现在想起来没有相同的版本! @Singhak:我不太明白你要我做什么。我目前也有一个分区。对于其他阅读本文的人。 Cygwin 安装要求提供特定的软件包。我读过你需要安装 DEVEL 包(更容易做所有)-
  • 不能解决您的问题,但我建议将 ADT 放在没有空格的目录中。根据我的经验,在路径中使用空格会导致 NDK 开发中出现各种问题。
  • 在这里查看教程:patidarvikas.blogspot.in/2013/09/…

标签: android-ndk cygwin cocos2d-x


【解决方案1】:

感谢所有评论的人! :)

这就是我最终要做的。

  1. 重新安装 Cygwin :当您进入选择要安装的软件包页面时,确保找到 DEVEL 并将安装操作从默认更改为安装。我知道它有很多兆,但它比梳理它更容易。如果你确实想梳理它并只得到你需要的东西,我建议使用这个网站:Installing a c++ compiler for windows
  2. 让你的路径简单:就像 user2359247 建议的那样。
  3. 最后运行create_android.bat,打开你的android项目。记住 build_native.sh 文件的路径位置并打开 cygwin 终端。
  4. 导航到 cygwin 中的路径,并使用 sh build_native.sh 运行该文件:此时一切都很顺利。

注意:

此外,我在教程中一直使用我的 ndk 版本,即 r9 而不是 r8,它没有给我带来任何麻烦。

非常感谢!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-09
    • 1970-01-01
    • 1970-01-01
    • 2012-02-14
    • 1970-01-01
    • 1970-01-01
    • 2016-04-14
    • 1970-01-01
    相关资源
    最近更新 更多