1.将cocos2d-x项目移植到Linux环境下,将cocos2d-x项目移植到手机上
1.將cocos2d-x相關的軟件包拷貝到Linux下。
2對上面的安裝包進行解壓
unzipcocos2d-x-2.2.3.zip
unzipcocos2d-x-3.2.zip
3執行cocos2dx-2.2.3/install-deps-linux.sh(執行這個命令需要有網絡)
4安裝QT,命令:sudo apt-get install qt-sdk
5在cocos2dx-2.2.3目錄下,執行./make-all-linux-project.sh
6要讓64位的linux能運行32位的adb,aapt工具,需要安裝以下軟件
sudo apt-get install git ssh vim ctagsqt-sdk build-essential libx11-dev libxmu-dev libglu1-mesa-dev libgl2ps-devlibxi-dev libglfw-dev libzip-dev libcurl4-gnutls-dev libfontconfig1-devlibsqlite3-dev libglew*-dev openjdk-7-jdk lib32z1 lib32ncurses5 lib32bz2-1.0lib32stdc++6
7創建一個空項目tank,進入:
/home/toto/cocos/cocos2d-x-2.2.3/tools/project-creator
執行以下命令:
./create_project.py -project tank -languagecpp -package com.toto.tank
8拷貝window下的Resource和Classes,并將它們放到項目目錄下,將tank目錄下的Classes和Resources這個兩個文件夾刪除并將開發好的項目中的Classes和Resource放到tanke目錄下。
9打開QT,執行以下幾個過程:
| 5) create-project.py創建工程tank ??cd tools\project-creator ??./create-project -project tank -language cpp -package com.toto.tank ??cd ../../projects/tank/proj.linux ??make????????????-- release? 版本 ??./build.sh??????-- debug 版本 6)執行編譯出來的程序 ??tank /proj.linux/bin/release/ tank?--release版本 ??tank /proj.linux/bin/debug/ tank???--debug版本 ? 7)配置QTcreator ??a.打開QTcreator創建工程 ????file->new -> import project -> import existing project ??b.填寫project名 ??c.選擇源文件代碼目錄,這個目錄是cocos2dx-2.2.3 ??d.設置篩選條件,去掉一些不用的目錄 ??e.點next完成項目創建 ? 8)配置QTcreator項目 ??a.build目錄,把build改稱你的工程目錄下的proj.linux ??b.修改build Steps把原有的make all刪除,點擊add build steps添加新命令build.sh |
?
FileàNewFile Or Projectà
填寫項目名,選擇路徑,注意這里的路徑是cocos2d-x的根路徑
點擊Next(注意勾掉自己不需要的東西)
10設置編譯路徑
路徑是:/home/toto/cocos/cocos2d-x-2.2.3/projects/tank/proj.linux
上面是編譯debug的版本的,通過最還是最上面的Rename可以將Default這個名字改成debug名字。下面在添加一個release的。
11修改makefile文件
進入pro.linux目錄下,列出所有的.cpp文件
12?修改makefile
13從cocos2d-x中提供的tstCPP中拷貝我們想要的makefile中的內容
| EXECUTABLE = tank COCOS_ROOT = ../../.. ? #添加下面的內容 INCLUDES = -I.. -I../Classes \ ????????-I$(COCOS_ROOT)/CocosDenshion/include \ ????????-I$(COCOS_ROOT)/extensions/ \ ????????-I$(COCOS_ROOT)/external/ \ ????????-I$(COCOS_ROOT)/external/chipmunk/include/chipmunk ? #修改要編譯的頭文件 SOURCES = main.cpp \ ????????../Classes/AI.cpp \ ????????../Classes/AppDelegate.cpp \ ????????../Classes/Bullet.cpp \ ????????../Classes/Item.cpp \ ????????../Classes/LayerGame.cpp \ ????????../Classes/LayerMenu.cpp \ ????????../Classes/LayerSetup.cpp \ ????????../Classes/LayerStart.cpp \ ????????../Classes/MenuCtrl.cpp \ ????????../Classes/TankEnemy.cpp \ ????????../Classes/TankFriend.cpp ? include $(COCOS_ROOT)/cocos2dx/proj.linux/cocos2dx.mk ? #SHAREDLIBS += -lcocos2d #COCOS_LIBS = $(LIB_DIR)/libcocos2d.so ? #添加靜態庫 STATICLIBS += \ ????????$(LIB_DIR)/libextension.a \ ????????$(LIB_DIR)/libbox2d.a \ ????????$(LIB_DIR)/libchipmunk.a ? SHAREDLIBS = -lcocos2d -lcocosdenshion -lcurl -lpthread #COCOS_LIBS = $(LIB_DIR)/libcocos2d.so $(LIB_DIR)/libcocosdenshion.so ? #-L$(LIB_DIR)制定鏈接目錄 $(TARGET): $(OBJECTS) $(STATICLIBS) $(COCOS_LIBS) $(CORE_MAKEFILE_LIST) ????????@mkdir -p $(@D) ????????$(LOG_LINK)$(CXX) $(CXXFLAGS) $(OBJECTS) -o $@ $(SHAREDLIBS) $(STATICLIBS) -L$(LIB_DIR) ? $(OBJ_DIR)/%.o: %.cpp $(CORE_MAKEFILE_LIST) ????????@mkdir -p $(@D) ????????$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) $(VISIBILITY) -c $< -o $@ ? $(OBJ_DIR)/%.o: ../%.cpp $(CORE_MAKEFILE_LIST) ????????@mkdir -p $(@D) ????????$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) $(VISIBILITY) -c $< -o $@ |
14去掉C++11中的代碼,比如去掉override
15彈出如下窗口:
Executable重要填寫的內容如下(默認生成release版本的情況下)
再次執行,出現下面情況:
| /home/toto/cocos/cocos2d-x-2.2.3/projects/tank/proj.linux/bin/release/tank: error while loading shared libraries: libcocos2d.so: acannot open shared object file: No such file or directory |
?
16將需要的共享庫拷貝到/usr/lib目錄下
17接著再在QT中執行得到的結果如下:
?
下面進行手機移植:
18導入cocos2dx項目,項目路徑是:
/home/toto/cocos/cocos2d-x-2.2.3/projects/tank/proj.android
19導入cocos2d-x提供的java庫,路徑是:
/home/toto/cocos/cocos2d-x-2.2.3/cocos2dx/platform/android/java
Eclipse導入的截圖:
20配置WindowsàPreferenceàC/C++àBuildàEnvironment中添加NDK_ROOT
我的NDK路徑是:/home/toto/cocos/android-ndk-r9d
配置方式如下:
21修改Android.mk(修改makefile文件)
進入如下目錄:
/home/toto/cocos/cocos2d-x-2.2.3/projects/tank/proj.android/jni
查找出所有以”.cpp”結尾的文件
修改Android.mk文件
22配置ADT
23 run一下Android程序,最終運行結果(轉換模擬器方向的快捷鍵:Ctrl+F12):
?
總結
以上是生活随笔為你收集整理的1.将cocos2d-x项目移植到Linux环境下,将cocos2d-x项目移植到手机上的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我的世界指令代码改创造(我的世界指令大全
- 下一篇: 电影演员王心刚妻子是谁(王心刚老婆的照片