利用Cgywin编译工具来将cocos2dx 在Android运行所需要的C++文件编译

1. ./build_native.sh(最后一把执行出错)

  please define NDK_ROOT in cocos2d-2.0-x-2.0.2

  配置环境变量:key: NDK_ROOK

         values: 你配置的NDK环境目录,Linux和Windows下目录各按系统不同而不同

2. make: *** [obj/local/armeabi/objs/cocos2dx_static/platform/android/CCCommon.o] Error 1

  我装的是ndk-9r,就报这错误了.然后查阅一番之后说什么应该用ndk-r8e.....

3.Cocos2d-x学习笔记(3:WIN7下将VS2010win32 cocos2d-x 2.0.2和2.1工程移植到android环境)

  挺权威的。

  环境&软件&工具包:

  windows xp

  cocos2dx 2.1.4

  cygwin-x86.exe windows下模拟编译环境

4. 配置这cocos2dx-android真是费神啊。下面简要说明以下步骤:

  按照高中学数学的方法,推导法来解决这一配置“难题”。

  1. 既然需要在Android平台下运行cocos的工程,那么就需要一个Android工程吧,另外需要调用cocos引擎API和C++编译库来实现吧。

  2. Anroid工程需要创建,那要不要自己手动去创建一个呢, 官网已经给出了操作步骤。   那C++编译库怎么生成呢,google一下cocos在windows的配置环境就知晓了,在win下需要一个模拟编译环境,这个就需要cgywin软件,这软件很小但是里面绑定下载的工具很多,如果你全点了INSTALL,那么恭喜你。 花两顿饭的时间估计都不够,整整有4.6个G!!!这里我们在select输入栏中 敲上make。随后将出来的结果全点成INSTALL就成(别点上面的父类 all 那就和你全部安装没啥区别了,点选安装好像要点两次, 有default、intall、reintall、unstall四个状态)。

  在这里说这么多就是因为我没装make打包的相关工具,在proj.android/bulid_native.sh 编译C++代码时,最后一步无法将编译后的C 去make打包成libxxx.so库

  如果你发现还是编译不成功,认真查看错误原因,可能你会看到load global ndk environment fail 加载全局的ndk环境失败,原因就在于你有没有配置ndk环境变量。

  3. 如何创建一个Anroid工程呢? 在cocos解压下的文件夹下,有个create-android-project.bat ,这里他点击之后,主要执行:先载入你配置的NDK、SDK、cygwin环境路径,然后依次按步骤并提示你:指定工程包名  -> 工程名 -> 选择工程Android API的版本   over

  那么你要做的就是打开上面bat文件,找到

:: modify it to work under your environment
set _CYGBIN=Q:\cgywin\bin
if not exist "%_CYGBIN%" echo Couldn't find Cygwin at "%_CYGBIN%" & pause & exit 4 :: modify it to work under your environment
set _ANDROIDTOOLS=Q:\android-sdks\tools
if not exist "%_ANDROIDTOOLS%" echo Couldn't find android sdk tools at "%_ANDROIDTOOLS%" & pause & exit 5 :: modify it to work under your environment
set _NDKROOT=Q:\android-ndks\android-ndk-r8e
if not exist "%_NDKROOT%" echo Couldn't find ndk at "%_NDKROOT%" & pause & exit 6

万事俱备,那就可以顺着思路(先配置好环境然后再执行命令)。   如果还是出现了错误:

比如到最后了,Hello World就是看不到cocos可爱的画面,并且还报出

08-15 17:34:24.919: E/AndroidRuntime(17557): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load game: findLibrary returned null

呵呵,就是这错误 让重复很多次配置环境的路!!! 去cocos官网论坛上,就是说 无法加载这库是因为你的NDK 环境变量没有配置。

但是我检查了我的确实是有,不然在bulid_native.sh这一步就会抱错的。

最后还是参照官网的配置步骤:先create project 然后使用bulid_native.sh命令将C++库打包      

<application android:label="@string/app_name"
android:icon="@drawable/icon">
and change it by the correct icon name:
<application android:label="@string/app_name"
android:icon="@drawable/ic_launcher">
And, before you close AndroidManifest.xml, modify android:minSdkVersion to be:
<uses-sdk android:minSdkVersion="14"/>
and Save the file.

点击这里:cocos2dx官网

  

cocos2dx - 部署到android真机上错误整理的更多相关文章

  1. cocos2d-x 不能在android真机debug的问题

    最近在做cocos2d-x开发的时候,发现在android真机上不能调试C++代码,显示如下警告信息 Ignoring packet error, continuing... warning: unr ...

  2. React-Native项目在Android真机上调试

    目录 1.确保你的设备已经成功连接.可以终端输入adb devices来查看: 2.终端运行npm start 开启本地服务,成功后运行react-native run-android来在设备上安装并 ...

  3. 在可部署到brew真机上的程序包构建完之后又要如何将该程序包发布到真机上呢

    1.到brew官网上去申请含有classid的bid文件,以及.sig文件 2.根据申请到的bid文件重新生成mif文件. 3.将mif文件部署到brew真机上的mif文件夹下. 4.在真机上的bre ...

  4. 在android真机上使用sqlite3

    #zijun#2013.10.29#QQ:223663737 在android真机上使用sqlite3 前期准备: 1:保证手机已经ROOT 操作步骤: 1 : 打开CMD 2 : 进入android ...

  5. cocos2d-x在android真机上设置帧率无效的问题

    通过setAnimationInterval设置帧频时,发现在android下没有效果的 在Cocos2dxRenderer .java文件里面找到了onDrawFrame这个函数.里面有句注释 : ...

  6. [转]Fiddler抓取Android真机上的HTTPS包

    此篇文章转载自:http://blog.csdn.net/roland_sun/article/details/30078353 工作中经常会需要对一些app进行抓包, 但是每次默认都是只抓http请 ...

  7. Android 开发之错误整理java.lang.SecurityException: Requires READ_PHONE_STATE: Neither user 10088 nor current process has android.permission.READ_PHONE_STATE.

    java.lang.SecurityException: Requires READ_PHONE_STATE: Neither user 10088 nor current process has a ...

  8. Android 开发之错误整理 [2014-04-28 09:22:28 - XXXX] Unable to resolve target 'android-18'

    在开发的时候难免会导入项目,那么怎么经常会遇到这个错误: [2014-04-28 09:22:28 - XXXX] Unable to resolve target 'android-18' targ ...

  9. 在你开发完brew应用之后 ,你又如果将brew应用由编译成可以部署到brew真机上的程序包呢

    参考自:http://blog.csdn.net/feimor/article/details/6239281 一.准备工作(安装工具) 先安装Visual C++ 6.0,再安装BREW SDK v ...

随机推荐

  1. 【Linux】pv vg lv, 加盘,扩容磁盘

    PV VG LV关系:一个物理盘(或一个lun)就是一个pv,有几个物理盘就有几个pv.一个或者几个硬盘可以组成一个vg,一个系统可以包括好几个vg,比如rootvg ,datavg等 PV组成VG, ...

  2. builder pattern

    design patterns 结合书本和这个网站的这个系列的文章来看: https://www.tutorialspoint.com/design_pattern/builder_pattern.h ...

  3. Android实现批量照片上传至server,拍照或者从相冊选择

    近期因为项目需求,须要完毕批量照片上传,折腾了一段时间,最终完毕了,达到了例如以下效果 主界面主要有GridView组成和button组成,当按下一个格点时,会调用相机或者相冊,拍照或者选择相冊照片, ...

  4. 正则表达式表示 ja.resx 所在行

    [^\n]*ja.resx[^\n]*\n?正则表达式表示 ja.resx 所在行 用ultraEdit 删除关键字所在行的下一行或是上一行,所在行保留 删除 关键字所在行 的前3行: (^.*?(\ ...

  5. Unity3D 图形问题之怎样使用水?

     怎样使用水? 注意:本页所述内容仅仅适用于台式机编辑器模式. Unity 的标准资源和专业版标准资源包 (Standard Assets and Pro Standard Assets pack ...

  6. iOS 计步器的几种实现方式

    代码地址如下:http://www.demodashi.com/demo/11658.html 这篇文章介绍两种可以获取计步数据的方法,一种是采用CMPedometer获取手机计步器数据,另一种是采用 ...

  7. poj 2409 Let it Bead Polya计数

    旋转能够分为n种置换,相应的循环个数各自是gcd(n,i),个i=0时不动,有n个 翻转分为奇偶讨论,奇数时有n种置换,每种有n/2+1个 偶数时有n种置换,一半是n/2+1个,一半是n/2个 啃论文 ...

  8. android之ScrollView里嵌套ListView(转)

    hi,大家好,研究完ScrollView嵌套ScrollView之后,本人突然又想研究ScrollView里嵌套ListView了. 如果还不知道ScrollView嵌套ScrollView是怎么实现 ...

  9. Audio简介

    本片只简单从硬件角度简介Audio AC97/HDA Audio总线分两种: (1)I2S (2)HDA HD Audio spec Audio verb table是用来初始化audio的,一个au ...

  10. Atitit.收银系统pos 以及打印功能的行业标准

    Atitit.收银系统pos 以及打印功能的行业标准 1. ESC指令序列 Escape指令序列不同于ESC/POS指令 1 2. 打印标准OPOS POSPrinter 与 CashDrawer 驱 ...