1. 程式人生 > >命令列編譯cocos2d-x遇到的問題。

命令列編譯cocos2d-x遇到的問題。

今天命令列編譯cocos2d-x 3.1的工程生成APK包,遇到了幾個問題,弄了一個下午,記錄一下:

1. 提示cocos2d-x/external/freetype2/prebuilt/android/Android.mk:cocos_freetype2_static: LOCAL_SRC_FILES points to a missing file

這個其實是提示.a檔案找不到。根據這篇文章http://blog.csdn.net/lxd211/article/details/23977525

的第9條,才知道是因為svn伺服器上沒有上傳.a檔案。類似的還有可能是.so檔案。比如如果用了fmod庫,提示找不到fmod庫的.so檔案的時候,看看svn設定裡面的忽略檔案型別。一般*.a和*.so都是被忽略的。任意資料夾右擊,找到tortoiseSVN->屬性(setting)->常規屬性,右側面板下方可看到。

2. 提示lua_cocos2dx_extension_auto.o.d找不到。這個錯誤我很納悶,編譯lua_cocos2dx_extension_auto.cpp檔案後說找不到這個中間檔案。我看看其他能編譯的工程下面時能找到這個檔案的,本來想拷過來,結果發現拷貝不成功,提示說檔案路徑太長,拷貝不過來。看來就是因為檔案路徑太長了導致編譯產生這種錯誤。於是果斷把工程拷貝到一個短路徑的地方,比如說E盤根目錄下測試,果然成功。

3.提示Android.mk:27: *** Android NDK: Aborting。這個錯誤也讓我找了好久,納悶出錯的地方。鬱悶了很久終於找到解決的辦法:

參見http://www.eoeandroid.com/thread-319256-1-1.html,就是我的ndk是android-ndk-r9b,剛好我電腦上還有個android-ndk-r9d,我把環境變數裡面NDK的路徑換成android-ndk-r9d的就好了!

4.提示 Are you sure your NDK_MODULE_PATH variable is properly defined。這個一般都是在external裡面缺少某個第三方包,比如說fmod。