[cocos2d-x]环境配置、交叉编译及安卓项目的生成

简介:

1.配置cocos2d-x & Android开发环境

我想如果有意搞这个东东的,应该不用什么图文并茂了吧,稍微看一下就明白了。


1.1.安装VS2008

这是微软开发的集成开发环境,也是cocos2d-x的C++主战场,VS2008是VS系列最稳定的版本。

下载地址:http://pan.baidu.com/share/link?shareid=532811852&uk=637953331

激活方式就不提供了,自己度娘。MSDN按需安装。


1.2.安装Visual Assist_X(可选)

这款神奇是VS2008必装的插件,智能提示,辅助功能,是VS的好基友。

下载地址:http://pan.baidu.com/share/link?shareid=564415924&uk=637953331

激活方式你懂的。


1.3.安装Cygwin

Cygwin是windows平台上运行Linux的模拟环境,对于从Linux到Windows的应用程序移植,或者是使用GNU工具集在Windows上进行嵌入式开发都非常有用。可以通过在线安装,也可以离线进行安装,我们这里主要用来进行cocos2d-x跨平台(安卓)的交叉编译。

Cygwin下载地址:http://pan.baidu.com/share/link?shareid=561636163&uk=637953331

Cygwin离线包下载地址:http://pan.baidu.com/share/link?shareid=561923288&uk=637953331

采用在线安装你要保证网速够给力,不然几个小时是必须的,这里提供的离线包包含了develop的相关工具。


1.4.安装Java

Java是Android支持的编程语言,也是安卓环境搭建的基础。主要麻烦的地方是环境变量的设置。

下载地址:http://www.java.com/zh_CN/

环境变量配置:http://jingyan.baidu.com/article/f96699bb8b38e0894e3c1bef.html


1.5.安装带Android ADT的Eclipse

Eclipse集成开发环境是用以android app,当然也可以进行C++的开发,只要你安装相应的组件即可。安装Android ADT就可以进行Android app的开发,这里选择直接使用谷歌提供的打包好Android ADT的Eclipse,就免去了ADT的安装等操作。

下载地址:http://developer.android.com/sdk/index.html

安装完成后,通过SDK管理器下载相应SDK版本就可以了。


1.6.安装Android NDK

Android NDK是Android系统对外提供的基于C++接口的软件工具包,它集成了交叉编译器,只要修改相应的编译脚本文件就可以创建出so文件,且自动将其与Android app进行打包。

下载地址:http://developer.android.com/tools/sdk/ndk/index.html

使用方式:进入Eclipse→Windows→Preferences→Android→NDK→选择所在的路径。

需注意的是,有些较高NDK版本在和cocos2d-x配合编译的时候会出现问题。所以各个工具之间应选择可兼容的。


1.7.安装cocos2d-x

cocos2d-x引擎这里就不再介绍了,国内官网是http://cocos2d.cocoachina.com/

下载地址:http://cocos2d.cocoachina.com/download

安装方式:

(1)点击build-win32.bat,用来编译cocos2d-x文件。

(2)点击install-templates-msvc.bat,用来安装VS模版(向导)。

(3)create-android-project.bat,用来创建Andorid工程,在使用之前要先对其内容进行配置(Cygwin路径,Android SDK路径,Android NDK路径),如下;

[cpp]  view plain copy
  1. :: modify it to work under your environment    
  2. set _CYGBIN=e:\cygwin\bin  
  3. if not exist "%_CYGBIN%" echo Couldn't find Cygwin at "%_CYGBIN%" & pause & exit 4  
  4.   
  5. :: modify it to work under your environment  
  6. set _ANDROIDTOOLS=e:\android\android-sdk\tools  
  7. if not exist "%_ANDROIDTOOLS%" echo Couldn't find android sdk tools at "%_ANDROIDTOOLS%" & pause & exit 5  
  8.   
  9. :: modify it to work under your environment  
  10. set _NDKROOT=e:\android\android-ndk-r8  
  11. if not exist "%_NDKROOT%" echo Couldn't find ndk at "%_NDKROOT%" & pause & exit 6  

较高版本的cocos2d-x已经不再支持VS2008,而是转向支持比较高的VS2010和VS2012了,所以选择的时候请注意。


2.创建HelloCocos2dx的Win32项目

(1)点击cocos2d-win32.vc2008.sln,进入cocos2d-x解决方案。

(2)在解决方案上新建项目,创建名为HelloCocos2dx的项目。

(3)执行调试。可以看到:


3.创建HelloCocos2dx的Android项目

(1)关闭VS项目,将cocos2d-x中刚才创建的HelloCocos2dx的VS项目剪切到别的地方。

(2)点击已配置好的create-android-project.bat,输入包名和项目名称,项目名称也为HelloCocos2dx。

        前一步剪切的原因是如果存在同样的目录,Android项目会创建失败。然后选择Android目标SDK。等待创建成功。

(3)将步骤1的VS项目拷贝回来,覆盖Android的HelloCocos2dx目录中的Classes和Resoure文件夹。

(4)这时HelloCocos2dx目录下Android项目和Win32项目就在一起了,这样就不用每次编译都进行Classes和Resoure的拷贝了。


4.Cygwin的交叉编译

(1)进入Andoird目录→jni目录→修改Android.mk,把所有的cpp都包含进去。

[cpp]  view plain copy
  1. LOCAL_SRC_FILES := helloworld/main.cpp \  
  2.                    ../../Classes/AppDelegate.cpp \  
  3.                    ../../Classes/HelloWorldScene.cpp  
(2)打开Cygwin Terminal,将Android目录下的build_native.sh拖进去,执行。

(3)等待编译生成so文件,so文件在proj.android\obj\local\armeabi目录下,如下即成功了

[cpp]  view plain copy
  1. x/platform/third_party/android/prebuilt/libtiff/libs/armeabi/  
  2. StaticLibrary  : libcocos2d.a  
  3. Compile++ thumb  : cocosdenshion_static <= SimpleAudioEngine.cpp  
  4. Compile++ thumb  : cocosdenshion_static <= SimpleAudioEngineJni.cpp  
  5. StaticLibrary  : libcocosdenshion.a  
  6. SharedLibrary  : libgame.so  
  7. Install        : libgame.so => libs/armeabi/libgame.so  
  8. make: 离开目录“/cygdrive/d/Cocos2d-x/cocos2d-2.0-rc2-x-2.0.1/HelloCocos2dx/proj.android”  

5.导入eclipse,生成apk

(1)进入Eclipse,选择Import,导入HelloCocos2dx的安卓项目。

(2)生成apk文件。

(3)由于AVD不支持openGL2.0,所以在模拟器上没办法显示,只能在真机调试。


6.本文开发环境版本

(1)VS2008Pro

(2)VA_X

(3)Cygwin

(4)Jdk1.7.0_11

(5)Eclipse Juno

(6)Andorid SDK2.2

(7)Adroid-ndk-r7

(8)cocos2d-2.0-rc2-x-2.0.1


















本文转蓬莱仙羽51CTO博客,原文链接:http://blog.51cto.com/dingxiaowei/1366254,如需转载请自行联系原作者

相关文章
|
22天前
|
Java Android开发 Swift
安卓与iOS开发对比:平台选择对项目成功的影响
【10月更文挑战第4天】在移动应用开发的世界中,选择合适的平台是至关重要的。本文将深入探讨安卓和iOS两大主流平台的开发环境、用户基础、市场份额和开发成本等方面的差异,并分析这些差异如何影响项目的最终成果。通过比较这两个平台的优势与挑战,开发者可以更好地决定哪个平台更适合他们的项目需求。
83 1
|
24天前
|
前端开发 JavaScript 测试技术
android做中大型项目完美的架构模式是什么?是MVVM吗?如果不是,是什么?
android做中大型项目完美的架构模式是什么?是MVVM吗?如果不是,是什么?
71 2
|
24天前
|
XML Java 数据库
安卓项目:app注册/登录界面设计
本文介绍了如何设计一个Android应用的注册/登录界面,包括布局文件的创建、登录和注册逻辑的实现,以及运行效果的展示。
97 0
安卓项目:app注册/登录界面设计
|
2月前
|
IDE Android开发 iOS开发
探索Android与iOS开发的差异:平台选择对项目成功的影响
【9月更文挑战第27天】在移动应用开发的世界中,Android和iOS是两个主要的操作系统平台。每个系统都有其独特的开发环境、工具和用户群体。本文将深入探讨这两个平台的关键差异点,并分析这些差异如何影响应用的性能、用户体验和最终的市场表现。通过对比分析,我们将揭示选择正确的开发平台对于确保项目成功的重要作用。
|
3月前
|
Ubuntu 开发工具 Android开发
Repo下载AOSP源码:基于ubuntu22.04 环境配置,android-12.0.0_r32
本文介绍了在基于Ubuntu 22.04的环境下配置Python 3.9、安装repo工具、下载和同步AOSP源码包以及处理repo同步错误的详细步骤。
188 0
Repo下载AOSP源码:基于ubuntu22.04 环境配置,android-12.0.0_r32
|
5天前
|
前端开发 JavaScript 测试技术
Android适合构建中大型项目的架构模式全面对比
本系列教程详细讲解 Kotlin 语法,适合需要深入了解 Kotlin 的开发者。快速学习 Kotlin 语法的小伙伴可以查看“简洁”系列教程。此外,教程还对比了多种适合中大型项目的架构模式,如 MVVM、MVP、MVI、Clean Architecture 和 Flux/Redux,帮助开发者根据项目需求选择合适的架构。
15 3
|
6天前
|
前端开发 JavaScript 测试技术
Android适合构建中大型项目的架构模式全面对比
Android适合构建中大型项目的架构模式全面对比
17 2
|
2月前
|
Java Maven 开发工具
第一个安卓项目 | 中国象棋demo学习
本文是作者关于其第一个安卓项目——中国象棋demo的学习记录,展示了demo的运行结果、爬坑记录以及参考资料,包括解决Android Studio和maven相关问题的方法。
第一个安卓项目 | 中国象棋demo学习
|
24天前
|
编译器 Android开发
配置环境变量,使CMakeLists.txt可直接使用Android NDK工具链编译项目
配置环境变量,使CMakeLists.txt可直接使用Android NDK工具链编译项目
|
2月前
|
JavaScript 前端开发 Android开发
让Vite+Vue3项目在Android端离线打开(不需要起服务)
让Vite+Vue3项目在Android端离线打开(不需要起服务)