cocos2d-x新手日记(一)

sdk下载地址

开发环境:windows

IDE:vs2010(原生不支持早期的vs版本,但是可以手动配置)

多平台项目的创建

早期版本的cocos2d-x会提供一些IDE模板用于创建工程,但是在2.1之后官方推荐用python脚本创建

创建脚本所在目录:解压目录\tools\project-creator\create_project.py

当然,这是一个python脚本,需要安装python环境,安装包地址可以baidu或者google

create_project.py需要两个参数输入,因此需要在cmd模式下输入,-project 工程名 -package 用于android的包名 -language 开发语言(一般选择cpp)

如果不出意外那么会在解压目录下的project目录下生成响应的工程,里面包括了各种平台的工程文件

用vs2010直接打开proj.win32下面对应的sln,直接编译运行即可得到hello world

Android环境的配置

需要的软件环境adt(去google下载)

ndk(这个是需要在eclipse里面做配置)

jdk(java SDK )

cygwin(搜索一下,需要安装g++,vim,gdb等编译相关的工具)

安装完毕后把cygwin目录下的bin目录添加到系统环境变量Path中

打开eclipse,直接导入proj.android,类型为已存在的android工程(那个英文太长不好打)

导入之后编译器会提示错误

一般有两种情况

android版本不一致,这个时候只要修改project.properties文件中“target”字段为当前存在的android版本

另一个是会提示无法识别Cocos2dxActivity类,这个要在导入一个android工程,工程地址在:cocos2d-x解压目录\cocos2dx\platform\android\java

如果cygwin的bin目录没有配置到环境变量中则会提示找不到bash之类的问题

另外需要添加一个c++环境变量

NDK_ROOT=NDK的根目录地址

这个环境变量可以直接添加到Windows/Preferences那个全局选项中,这样其他项目就不用重复配置了

也可单独给指定项目配置

之后就可以编译了

这个时候有可能会出现另一位问题,编译可以通过,但是eclipse会产生一个Error

提示你NDK的版本比当前的最低版本高,意思差不多是说低版本的机器有可能不兼容

两个解决方法:

1、修改输出的最低android版本,使其高于ndk版本

2、修改 ndk根目录/build/core/add-application.mk 这个文件,把__ndk_warning改为__ndk_info,这样eclipse就不会作为error处理,而且这个worning任然会输出

大功告成!

另外android的so文件也可以直接在cywin中生成,只不过每次进到那个目录比较麻烦,当然也可以设置一个sh脚本直接搞定

接下来说明一下cywin下的编译

环境变量 NDK_ROOT同样需要配置

这个只要写到.bash_profile中就可以了

输入命令vim ~/.bash_profile

在最后增加两行

NDK_ROOT=NDK的根目录地址

export NDK_ROOT

保存退出后重新代开Cygwin

然后到proj.android目录下运行,build_native.sh,即可生成so文件

如果在cygwin里编译的话eclipse中就不需要再编译了,把C/C++ Build选项中的 Build Command中的指令直接删掉,然后直接debug,export什么的就行了


PS:如果放到cygwin编译的话cywin的bin也不需要添加到Path里面,另外eclipse的builder选项中需要把cdt builder给关掉,否则一直报错,因为已经不需要eclipse编译了


最后在说明一个比较容易被忽略的问题

如果工程中有新的cpp文件加入,需要修改jni目录下的Android.mk

在LOCAL_SRC_FILES变量中增加新的cpp,具体格式照着之前存在的写就是了


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值