我正在关注该网站的教程: 通过游戏应用货币化 作者:Todd Perkins http://www.lynda.com/Android-tutorials/Understanding-downloading-Cocos2d-x/107169/126919-4.html
我提出的问题不需要访问所有文件。我已经研究了如何解决堆栈溢出问题并在下面进行了讨论
我已按照教程进行操作,它要求我:
- 安装 Cygwin
- 下载Cocos2dx-2.0.1(我知道这很旧,但我不想处理弃用问题,直到我对环境更有信心)
- 运行create-android-project.bat(工作正常)。
- 打开我创建的项目,然后移至 proj.android 并在 Cygwin 中运行 build_native.sh。
- 然后我打开 cygwin.bat,导航到 myproject/proj.android 并运行 ./build_native.sh
Problem:
$ ./build_native.sh
使用预构建的外部
./build_native.sh:第74行:/cygdrive/c/android-ndk-r9c-windows-x86_64/ndk-build:没有这样的文件或目录
所以我查看了文件并仔细检查了我的更改:
-
在 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
- 检查 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
-
仔细检查 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 上冲浪了一段时间,并尝试了以下操作:
- Notepad++ 中的 EOL 转换,因此 LF 适用于 Windows 的 build_native.sh
- 某个地方的答案说我需要在安装 cygwin 时安装 make 软件包。我没有遇到这个问题,所以我不确定这是否适用。
- 我搜索了很多设置路径的方法 - NDK_ROOT
问题:
我究竟做错了什么?是变量设置错误还是cygwin安装不正确?
感谢所有发表评论的人! :)
这就是我最终所做的。
-
重新安装 Cygwin:当您进入选择要安装的软件包页面时,请确保找到DEVEL并将安装操作从默认更改为安装。我知道它有很多兆,但这比梳理它更容易。如果您确实想梳理并仅获得您需要的内容,我建议使用以下网站:安装适用于 Windows 的 C++ 编译器 http://cs.calvin.edu/curriculum/cs/112/resources/installingEclipse/cygwin/
-
让你的路径变得简单:就像用户2359247建议的那样。
- 最后运行create_android.bat,打开你的android项目。记住 build_native.sh 文件的路径位置并打开 cygwin 终端。
- 导航到 cygwin 中的路径,并使用 sh build_native.sh 运行该文件: 此时一切都非常顺利。
NOTE:
另外,我在教程中继续使用我的 ndk 版本,即 r9 而不是 r8,它没有给我带来任何问题。
谢谢你这么!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)