2012年7月2日 星期一

cocos2d-x with cygwin

cocos2d-x如果要在windows下建android project的話,一定要安裝cygwin。
但如果cocos2d-x的路徑是放在ntfs磁碟裡,透過create-android-project.bat建立project時會出現permission denied的問題,原因是copy_files.sh裡面會用到cp -rf的指令從HelloWorld裡copy需要的檔案,但cygwin在處理cp時只會看POSIX permission,所以檔案雖然是copy過去了,但後續的一些
檔案處理全部都會因為權限的關係出問題。簡單的解決方法是直接修改HelloWorld裡面的檔案,
讓那些會使用到的檔案加上POSIX權限就好。一般的檔案只需要rw-r--r--,目錄的話則是rwxr-x-r-x。或許可以寫個shell script自動化這些事...:)
大概像這樣


#!/bin/bash


chmod -R +rwx HelloWorld/Classes/
chmod -R +rwx HelloWorld/android/
chmod -R +rwx HelloWorld/Resources/


for file in HelloWorld/Classes/*
do
    if [ -f $file ]; then
            chmod -x $file
    fi
done


for file in HelloWorld/android/*
do
    if [ -f $file ]; then
            chmod -x $file
    fi
done


for file in HelloWorld/Resources/*
do
    if [ -f $file ]; then
            chmod -x $file
    fi
done

沒有留言: