cocos2d x與android交叉編譯問題

2021-06-21 12:43:52 字數 1364 閱讀 1815

問題一:

1. 問題。

2. 分析及解決方案

由於3.0交叉編譯環境可以不使用cygwin,很多步驟被略過了,檢視3.0以前的版本編譯過程,發現使用cygwin的第一步是修改工程目錄下proj.android\jni中的android.mk檔案,並將所有的cpp檔案新增到local_src_files後面,儲存檔案,然後用cocos compile重新編譯android平台下的工程執行成功。

如果cpp檔案很多,不想乙個個輸入的話,採用這裡的辦法:

關鍵是這句:

file_list := hellocpp/main.cpp  

file_list += $(wildcard $(local_path)/../../classes/*.cpp)  

local_src_files := $(file_list:$(local_path)/%=%) 

在上面的makefile檔案中出現了wildcard和$(var:a=b)結構,詳細在:

問題二:

fatal error: cocos-ext.h: no such file or directory

方案:

local_c_includes := $(local_path)/../../classes \

$(local_path)/../../classes/ndkhelper \

$(local_path)/../../classes/jansson \

$(local_path)/../../cocos2d/cocos/network \

$(local_path)/../../cocos2d/extensions

local_whole_static_libraries := cocos2dx_static

local_whole_static_libraries += cocosdenshion_static

local_whole_static_libraries += box2d_static

local_whole_static_libraries += cocos_network_static

local_whole_static_libraries += cocos_extension_static

include $(build_shared_library)

$(call import-module,2d)

$(call import-module,audio/android)

$(call import-module,box2d)

$(call import-module,network)

$(call import-module,extensions)

**:

將cocos2d x專案移植到android

1.準備ndk 最好用ndk 8,ndk 9可能報如下圖的錯 cygwin 2.編輯cocos2d x目錄 cocos2d x的安裝目錄 下的 3.建立android工程 1 執行cocos2d x目錄下的create android project.bat 2 然後首先輸入包名和專案名 3 輸入支...

COCOS2DX 場景與層

runscene scene 啟動第乙個場景時使用 popscene 與pushscene配合使用,可以回到上乙個場景 poptorootscene 與pushscene配合使用,可以回到根場景 2.場景過渡動畫 由transitionsecene和它的子類展示 3.場景的生命週期函式 ctor建構...

cocos2d x 資源集合

官網 主席子龍山人 archive 2011 08 08 2131019.html kmyhy的專欄 老g的小屋 cocos2d xtouch事件cocos2d 事件冒泡規律 和 ccmenu一直響應事件的解決辦法 swallow touches how to setmultipletouchena...