Cannot find module with tag 'Box2D' in import path

文章撰寫日期︰2014/08/23 21:29
cocos2d-x使用版本︰2.0.4

一、問題

今天在重build cocos2d-x專案時,
遇到以下問題

Android NDK: /Users/lp43/cocos2d-x/cocos2d-x2.0.4/external/Box2D/Android.mk: Cannot find module with tag 'Box2D' in import path

Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ?

二、解決辦法

cocos2dx在使用ndk編譯時,
會去讀Android.mk腳本。

因為腳本裡宣告了該專案會使用者Box2D重力引擎模組
$(call import-module,Box2D)

因此在NDK make時,
程式去找cocos2dx根目錄底下的Box2D資料夾,
試圖將該目錄編譯成靜態C函式庫,
但因為在cocos2dx 2.0.4 Box2D的預設路徑並不在cocos2dx目錄底下,
而是在cocos2dx/external/Box2D
因此要將import-module更改如下

$(call import-module,external/Box2D)

這樣子ndk就找的到Box2D資源並可順利編譯。