Are you sure your NDK_MODULE_PATH variable is properly defined?(2)


Are you sure your NDK_MODULE_PATH variable is properly defined?



STEP1:   MIND:



爆出來的原因:
Android.mk引用了一個模塊,cocos2dx模塊,而NDK沒有找到它,所以報了這個錯,
之前的版本是直接包含cocos2dx模塊的Android.mk的,所以不會報錯
而這里使用了import,我們也可以使用之前版本的方法來包含它,但貌似import比之前的方法要更好一些
錯誤信息提示我們,可以通過設置NDK_MODULE_PATH環境變量,這里很有可能設置錯誤
一般,一個Android.mk包含一個或多個模塊,當你要import cocos2dx模塊時,
他會在這個路徑下% NDK_MODULE_PATH\cocos2dx尋找Android.mk文件


STEP:  ACTION

個人編譯在cygwin上用$NDK/ndk-build編譯,分別嘗試一下幾種方式.

第一種方式:Say NO
Android.mk引用了一個模塊,cocos2dx模塊,而NDK沒有找到它,所以報了這個錯,之前的版本是直接包含cocos2dx模塊的Android.mk的,所以不會報錯而這里使用了import,
我們也可以使用之前版本的方法來包含它,但貌似import比之前的方法要更好一些錯誤信息提示我們,可以通過設置NDK_MODULE_PATH環境變量,這里很有可能設置錯誤。

這里設置:D:\development\cocos2d-2.0-x-2.0.3;D:\development\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\android\prebuilt






第二種方式:say NO!

添加NDK_MODULE_PATH變量,注意要寫兩個路徑,用分號分開
D:\SDK\cocos2d-2.0-rc0a-x-2.0;D:\SDK\cocos2d-2.0-rc0a-x-2.0\cocos2dx\platform\third_party\android\prebuilt
因為cocos2dx還import了其他幾個module,第二個路徑制定了第三方的module,設置完就可以進行編譯了

第三種方式:say NO!
NDK_MODULE_PATH的設置與格式
    NDK_MODULE_PATH 是一個環境變量,不是android.mk中設置的變量。
    NDK_MODULE_PATH多個路徑用冒號分割。不是分號!且整個字符串中間不能有空格。格式不正確也會報錯上面的錯誤的。
   設置NDK_MODULE_PATH的方法
    1、在系統環境里手動添加這個環境變量,
    2、在build_native.sh中 運行ndk-build之前使用export命令定義環境變量NDK_MODULE_PATH。
    如:export NDK_MODULE_PATH=路徑1:路徑2:路徑3
    3、直接將NDK_MODULE_PATH=路徑1:路徑2 加到 ndk-build命令的參數后面。ndk-build的參數最終會直接傳給make.
    如:$NDK_ROOT_LOCAL/ndk-build -C $HELLOWORLD_ROOT NDK_MODULE_PATH=路徑1:路徑2
(命令 make aaa=213 //在編譯makefile之前將aaa當作環境變量設置為213.)
    

第四種方式:say NO!
    還可以在android.mk中設置NDK_MODULE_PATH
    在import語句之前加入,
$(call import-add-path,$(LOCAL_PATH)/platform/third_party/android/prebuilt)
    將一個新的路徑加入NDK_MODULE_PATH變量。



第五種方式:say  Yes:
直接在cygwin下來執行build_native.sh它,提示缺少NDK_ROOT,那就配置一下唄。
# options
NDK_ROOT=你的NDK path;

buildexternalsfromsource=


建議先嘗試第五種,若真不行,再在前四種的不可能中發現新發現吧。









免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM