文中大部分内容来自http://cn.quick-x.com/?p=253,绿色标记部分为修改部分。

配置编译环境的基本步骤:

  1. 安装 Visual Studio 2012
  2. 安装 Java SDK
  3. 安装最新的 Android ADT bundle 和 Android NDK
  4. 下载 quick-cocos2d-x 源代码
  5. 设置环境变量
  6. 编译 quick-x-player proj.win32 工程
  7. 设置eclipse的lua编译环境。
  8. 创建新项目,并在 Android 真机上进行测试
  9. xplayer+eclipse调试lua

Step 1: 安装 Visual Studio 2012

从 http://www.microsoft.com/visualstudio/ 下载 Visual Studio 2012,并进行安装。

支持的版本:

  • Visual Studio 2012
  • Visual Studio Express 2012 for Windows Desktop

注意:必须使用 Windows Vista/7/8 操作系统。

Step 2: 安装 Java SDK

从 http://www.oracle.com/technetwork/java/javase/downloads/ 下载最新版的 Java SDK (JDK, 推荐使用 32bit 版本),并进行安装。

Step 3: 安装最新的 Android ADT bundle 和 Android NDK

  1. 从 http://developer.android.com/sdk/ 下载最新的 ADT Bundle for Windows ( 推荐 32bit 版本,或者和 JDK 匹配的版本 )。
  2. 解压缩 adt-bundle-windows-x86-2013????.zip 。
  3. 将目录 adt-bundle-windows-x86-2013???? 改名为 android 。
  4. 将目录 android\sdk 改名为 android\android-sdk-windows 。
  5. 从 http://developer.android.com/tools/sdk/ndk/index.html 下载 Android NDK r?
  6. 解压缩 android-ndk-r?-windows-x86.zip
  7. 将目录 android-ndk-r? 移动到 android\android-ndk-r?

    最终的目录结构:

    <PATH_TO>\android\android-ndk-r?
    <PATH_TO>\android\android-sdk-windows
    <PATH_TO>\android\eclipse

  8. 运行 android\android-sdk-windows\tools\android.bat, 选中 Android SDK 2.2如果看不到 Android SDK 2.2,请设置代理), 然后安装需要的包。

Step 4: 下载 quick-cocos2d-x 源代码

下载develop版本的quick,quick-cocos2d-x-develop.zip,这个版本的player增加了auto connect debugger功能,方便调试lua。

方法 1: 最快速获得源代码的途径是通过 quick-cocos2d-x 官方网站上的下载页面。这里列出了所有的稳定版本及其下载链接。

由于 Android SDK 和 NDK 的问题,quick-cocos2d-x 目录的放置有一定要求:

  1. 必须和 Android SDK/NDK 在同一个分区
  2. 不能放在根目录
  3. 路径中不能包含中文和空格(所以别放桌面了)

方法 2: 使用 git 工具克隆 quick-cocos2d-x 仓库。启动 终端 应用程序, 运行命令:

$ git clone git://github.com/dualface/quick-cocos2d-x.git

    Cloning into 'quick-cocos2d-x'...

如果访问 github.com 速度太慢,可以使用国内镜像仓库,网页:https://code.csdn.net/liaoyulei01/quick-cocos2d-x

Step 5: 设置环境变量

打开 系统属性 -> 高级 -> 环境变量:

添加下列环境变量(注意修改 <path_to>为你 quick-cocos2d-x 源代码所在的实际路径):

ANDROID_NDK_ROOT=<PATH_TO>\android-ndk-r8e
ANDROID_SDK_ROOT=<PATH_TO>\android-sdk-windows
QUICK_COCOS2DX_ROOT=<PATH_TO>\quick-cocos2d-x
COCOS2DX_ROOT=%QUICK_COCOS2DX_ROOT%\lib\cocos2d-x
ANDROID_HOME=%ANDROID_SDK_ROOT%
PATH=%QUICK_COCOS2DX_ROOT%\bin\win32

如果 PATH 变量已经存在,则在 PATH 变量最后添加;%QUICK_COCOS2DX_ROOT%\bin\win32

Step 6: 编译 quick-x-player proj.win32 工程

启动 Visual Studio 2012,打开 \<PATH_TO>\quick-cocos2d-x\player\proj.win32\quick-x-player_2012.sln 工程。

编译时如果提示文件找不到,请做以下检查:

  1. 环境变量设置是否正确
  2. 设置和修改环境变量后,必须重新启动 Visual Studio
  3. 工程默认的platform-tools设置的是v110xp,在win7-64下编译不过,改成v110.

编译完成以后,在quick-cocos2d-x-xx\player\bin\win32下生成quick-x-player.exe和quick-x-player-release.exe。(貌似这一步可以省略,因为下载的zip包里面已经有这两个exe了)

Step 7: 创建新项目,真机运行

在dos窗口下,运行脚本

quick-cocos2d-xxx\bin\create_project.bat cn.a.b.demoGame

此时在当前目录生成一个demoGame目录,在demoGame下包含多个平台的项目。

在dos下,运行脚本proj.win32/build_native.bat,几分钟过后在libs下生成一个libGame.so,这个so就是Cocos2d的静态链接库。

现在用eclipse打开proj.win32项目,连上真机就可以调试了,不过由于没有添加任何代码,在真机上看到的是黑屏。

此时将samples/coinflip的scripts和res目录拷贝到proj.android/assets目录下,重新运行就能在真机上看到coinflip游戏了。

Step 8: eclipse LDT+quick-x-player调试lua

在eclipse的Help->eclipse market place窗口中搜索ldt,安装lua development tools(LDT)。

安装以后,在File->new->下可以看到lua project了,创建lua项目。选择从已有代码创建

然后在main.lua前加上如下代码,以支持调试

-- for debugger
local initconnection = require("debugger")
initconnection('127.0.0.1', 10000 , 'luaidekey')

(上述代码引用了debugger,但是现在scripts目录下并没有这个文件。下面步骤中会将这个文件加上)

在debug configuration窗口,创建一个lua attach to application类型的配置。

idekey和timeouts默认都已设置,timeouts改成60。

点击Lua Debugger Client,在随后的目录选择窗口中,选择本lua工程的scripts目录,操作完毕后,ldt会拷贝一个debugger.lua到Scripts目录下。

准备工作基本完成,接下来就可以调试了。

1、在ecplise中以debug方式启动lua,在代码中设置断点,等待quick-x-player的连接。

2、启动quick-x-player-release,在file下勾选Auto connect debugger(只有develop版本的player才有这个选项)

然后open project,选择之前项目demoGame/proj.android/assets(注意不是demoGame,不然调试的时候会报错)。

按F5,此时eclipse就可以看到代码运行到断点了。

quick-cocos2dx在eclipse下的lua调试的更多相关文章

  1. quick cocos2d-x 2.2.4 window环境调试

    BabeLua简介 BabeLua是一款基于VS2012/2013(简称VS)的免费开源的Lua集成开发环境,在Lua编辑和调试方面,具有如下功能和特性: ●Lua语法高亮 ●语法检查 ●自动补全 ● ...

  2. eclipse下使用Genymotion调试Android程序出现的问题

    一. The connection to adb is down, and a severe error has occured. You must restart adb and Eclipse. ...

  3. cocos2dx在Eclipse下编译报错:Cannot find module with tag 'CocosDenshion/android' in import path

    在Eclipse下编译cocos2dx项目,报错如下: Android NDK: jni/Android.mk: Cannot find module with tag 'CocosDenshion/ ...

  4. Quick Cocos2dx 与 Eclipse 连真机debug遇到的问题

    今天下午解决了因为偷懒一直忍受的两个让我不爽很久了的问题: 1Eclipse无法连接手机调试的问题. 在设备管理器中看到的Android设备有黄色的感叹号, 说明驱动不是最新的. 按照网上搜到的解决方 ...

  5. 原生Eclipse下Java服务器调试的一个问题

    当你对Server的配置修改以后,最好到 workspacedir\.metadata\.plugins\org.eclipse.wst.server.core\tmp0目录下把缓存文件给删除了,否则 ...

  6. 在ubunut下使用pycharm和eclipse进行python远程调试

    我比较喜欢Pycharm,因为这个是JetBrains公司出的python IDE工具,该公司下的java IDE工具--IDEA,无论从界面还是操作上都甩eclipse几条街,但项目组里有些人使用e ...

  7. 在eclipse下远程调试hadoop2.0

    在<在eclipse下编译hadoop2.0源码>一文中,我详细介绍了如何在eclipse环境和命令行环境下编译hadoop2.0源代码,并简单介绍了如何构建hadoop环境,这篇文章将着 ...

  8. Mac下搭建quick cocos2d-x编译环境

    一. 我知道在你的电脑中一定已经安装好了Xcode(没有自己下载去吧),打开Xcode,开启"偏好设置"对话框(commond + ,).假设打开之后出现的是这种一个对话框,那么直 ...

  9. 【Java】使用Eclipse进行远程调试,Windows下开启远程调试

    原博链接:http://blog.csdn.net/sunyujia/article/details/2614614   今天决定做件有意义的事,写篇图文并茂的blog,为什么要图文并茂?因为很多事可 ...

随机推荐

  1. HDU 3879 && BZOJ 1497:Base Station && 最大获利 (最大权闭合图)

    http://acm.hdu.edu.cn/showproblem.php?pid=3879 http://www.lydsy.com/JudgeOnline/problem.php?id=1497 ...

  2. 我在工作中遇到的redis集群使用

    写次随笔,给自己工作学习中记录一个笔记 废话不多说,直接上代码: 功能:将相关信息存到redis中,并设置过期时间,如果redis中有,从redis获取,如果没有,从mysql中获取.redis配置了 ...

  3. java 带静态域的导出类创建时都发生了什么?

    先按从基类到导出类的顺序初始化静态域(之前已经初始化过的静态域不再初始化) 再按从基类到导出类的顺序初始化类,即基类普通字段+基类构造器主体+导出类字段+导出类主体... package test; ...

  4. JVM(八):Java 对象模型

    JVM(八):Java 对象模型 本文将学习对象是如何创建的,对象的内存布局,以及如何定位访问一个对象. 对象创建 当虚拟机碰到一个new指令时,首先检查指令参数能否在常量池中定位一个类的符号引用,并 ...

  5. python接口自动化(三十二)--Python发送邮件(常见四种邮件内容)番外篇——上(详解)

    简介 本篇文章与前边没有多大关联,就是对前边有关发邮件的总结和梳理.在写脚本时,放到后台运行,想知道执行情况,会通过邮件.SMS(短信).飞信.微信等方式通知管理员,用的最多的是邮件.在linux下, ...

  6. nginx实战操作(常用命令及配置)

    1. nginx介绍 2. nginx常用命令 验证配置是否正确: nginx -t 查看Nginx的详细的版本号:nginx -V 查看Nginx的简洁版本号:nginx -v 启动Nginx:st ...

  7. who are you?

    不多说,直接使用脚本跑 # -*- coding:utf-8 -*- import requests import string url = "http://ctf5.shiyanbar.c ...

  8. 我这边测了一下,发现#后面参数变化浏览器不会刷新,但是#一旦去掉就会刷新了,你那边的url拼的时候能不能在没参数的时候#也拼在里面,这样应该就OK了

    我这边测了一下,发现#后面参数变化浏览器不会刷新,但是#一旦去掉就会刷新了,你那边的url拼的时候能不能在没参数的时候#也拼在里面,这样应该就OK了

  9. redis分布式锁的问题和解决

    分布式锁 在分布式环境中,为了保证业务数据的正常访问,防止出现重复请求的问题,会使用分布式锁来阻拦后续请求.具体伪代码如下: public void doSomething(String userId ...

  10. 个人永久性免费-Excel催化剂功能第69波-专业图表库新增图表-刘万祥老师中国地图

    Excel催化剂的[专业图表库],仅提供一个工具的输出,让用户可以在制作专业图表过程中更低的门槛,更快速的完成所想要实现的图表.具体参考:第69波-打造最专业易用的商务图表库https://www.j ...