cocos2d-2.0-rc2-x-2.0.1 Hello World示例在windows8上使用cygwin无效

时间:2012-07-12 11:48:44

标签: android android-ndk cygwin cocos2d-x

我无法构建helloWorld示例以获取.so在eclipse中运行它。我已成功导入项目,并根据需要将变量更改为我的根路径。这是我的build_native.sh。我正在粘贴我在该文件中所做的唯一更改

NDK_ROOT_LOCAL=/cygdrive/e/android-ndk-r8
COCOS2DX_ROOT_LOCAL=/cygdrive/e/cocos2d

我的NDK工作正常,因为我已经成功执行了NDK的HelloWorld示例。我的SDK版本是20,NDK版本是8,我使用的是cygwin而不是1.7 ..我已经在我的NDK目录上执行了chown ..但是当我在HelloWorld示例程序中为cocos2d运行命令./build_native.sh时,我得到了这个错误

E:/android-ndk-r8/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/../lib/gcc/arm-          linux-androideabi/4.4.3/../../../../arm-linux-androideabi/bin/ld.exe: ./obj/local/armeabi/png.a: No such file: Permission denied
collect2: ld returned 1 exit status

当我在NDK目录窗口中搜索png.a时找不到该文件。我很困惑是否是权限错误或文件不存在。但我有最新的NDK,如果文件不存在,怎么会有人能够运行cocos2d-x ???需要帮助!!!

1 个答案:

答案 0 :(得分:0)

当我尝试时,似乎缺少对构建文件的权限。

$ ls -l obj/local/armeabi/png.a
---------- 1 someuser Domain Users 912618 Jul 12 18:23 obj/local/armeabi/png.a

link suggested上有forum,现在似乎无法访问。

无论如何,要修复,您可以设置文件的权限。

$ cd obj/local/armeabi/
$ chmod 664 *.a
$ cd ../../..

修改better fix可能是将/ etc / fstab中的默认权限设置为

none /cygdrive cygdrive binary,noacl,posix=0,user 0 0

在此之后,您应该可以运行./build_native.sh

可用于查找当前目录下没有(读/写)权限的所有文件的命令是find . -type f -perm 0

请参阅此answer以对工作目录下的所有文件设置写入权限。

考虑通过tutorial上的chmod来了解linux / unix中的权限概念,以防您不熟悉它们。