Maison  >  Article  >  base de données  >  Mac上利用Eclipse编译Cocos2d

Mac上利用Eclipse编译Cocos2d

WBOY
WBOYoriginal
2016-06-07 15:13:461049parcourir

要利用Eclipse编译Cocos2d-x的C代码必须安装好CDT插件,并利用Cocos2d-x脚本生成好项目1:在Eclipse中选择FileNewOther,然后选择C/CConvert to a C/C Project (Adds C/C... 要利用Eclipse编译Cocos2d-x的C代码必须安装好CDT插件,并利用Cocos2d-x脚本生成好

要利用Eclipse编译Cocos2d-x的C++代码必须安装好CDT插件,并利用Cocos2d-x脚本生成好项目1:在Eclipse中选择FileNewOther,然后选择C/C++Convert to a C/C++ Project (Adds C/C+...

要利用Eclipse编译Cocos2d-x的C++代码必须安装好CDT插件,并利用Cocos2d-x脚本生成好项目

1:在Eclipse中选择FileNewOther,然后选择C/C++Convert to a C/C++ Project (Adds C/C++ Nature)

Mac上利用Eclipse编译Cocos2d

点击Next在下一屏中勾选要转换的项目,Convert to C or C++栏目中选择C++ Project,Project type中选择Makefile project,

Mac上利用Eclipse编译Cocos2d

点击完成,这时Eclipse会询问你是否打开C/C++视图,选择NO。

接下来是修改项目设置,指定如何运行make命令。右击FirstCocos2dxGame工程,选择Properties,然后选择C/C++ Build

Mac上利用Eclipse编译Cocos2d

取消Use default build command复选框,然后在Build command:中输入下面的命令:

bash ${workspace_loc://项目文件夹}/build_native.sh NDK_DEBUG=1 V=1

点击Apply,然后Ok关闭。

在左边的项目树上,选中项目,然后ProjectBuild Project会看到控制台输出中看到C++ make在运行。

Mac上利用Eclipse编译Cocos2d

提示定义NDK_ROOT,查看proj.android下的文件build_navite.sh

Mac上利用Eclipse编译Cocos2d

没有定义NDK_ROOT时编译没有继续,加上最上面那一句定义NDK_ROOT,当然后面写自己机器的地址,保存退出后在Eclipse重新编译工程即可编译成功

Mac上利用Eclipse编译Cocos2d



在Eclipse中打开项目文件jni/hellocpp/main.cpp,会看到很多警告

Mac上利用Eclipse编译Cocos2d

出现这些警告,是因为我们没有配置正确的C++包含路径。右击FirstCocos2dxGame工程,然后选择PropertiesC/C++ GeneralPaths and SymbolsIncludesGNU C++。

   选择Add…按钮来选择下面的目录,之后点击Apply和OK。

$(NDKROOT)/platforms/android-8/arch-arm/usr/include

$(COCOS2DX_HOME)/cocos2dx/include

注意: 要使用实际的路径来替换掉$(NDKROOT) 和$(COCOS2DX_HOME)。

Mac上利用Eclipse编译Cocos2d

点击Apply时会提示重建索引,点击Yes即可

但仍然有一些警告,如AppDelegate.h文件还是找不到。这是因为AppDelegate.h是在$PROJECT_HOME/Classes文件夹下面。这个文件夹包含了我们工程里面的可移植的C++类,比如AppDelegate.cpp、HelloWorldScene.cpp等。

Cocos2d-x是从Cocos2d-iphone发展而来,而Cocos2d-iphone是基于Obj-C的专门针对IOS编写的引擎,Cocos2d-x在生成项目时同时生成了针对IOS平台的代码目录Classes、资料目录Resources和Android平台的proj.android目录

当我们创建Eclipse项目的时候,我们必须选择$PROJECT_HOME/proj.android目录,因为Eclipse需要一个AndroidManifest.xml文件。但是,这样的话,我们的工程就不包括关键的“Classes”文件夹了,这也是为什么我们会得到这么多警告的原因。

要修复它们右击项目,选择PropertiesC/C++ GeneralPaths and SymbolsSource Location。点击Link Folder...,然后复选中Link to a folder in the file system,点Browse...指向$PROJECT_HOME/Classes目录,Folder name保留默认Classes,最后点Apply和Ok。

Mac上利用Eclipse编译Cocos2d


完成后项目还会有一些警告,如果还想关闭这些警告可以右击项目,选择PropertiesC/C++ GeneralCode AnalysisUse project settings对警告进行关闭

Mac上利用Eclipse编译Cocos2d

当然这也会影响一些必须的警告提示,所以可以依各人喜好进行选择。


Eclipse这边的工作已经搞好了,Xcode这边新建一个项目,然后把Classes里的代码全删除(Move to Trash),然后引用proj.android同级目录的Classes目录下的所有文件,仅仅是增加文件引用哦,如果拷贝的话那就是两份代码了,Xcode这边修改Eclipse这边编译运行,发现图片变形了,在Xcode里把Resource组下的图片也删除掉,引用proj.android同级目录的Resource目录下的所有图片,之后两边一致了。



Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn