在Quick-cocos2dx中使用云风pbc解析Protocol Buffers,支持win、mac、ios、android
https://github.com/miaodadao/pbc
https://code.google.com/p/protobuf/downloads/list ,本例下载:protoc-2.4.1-win32.zip
集成到win的x-player集成到mac的x-player集成到ios、ipad的quick-cocos2dx项目中集成到android的quick-cocos2dx项目中
https://code.google.com/p/protobuf/downloads/list
@echo offset DIR=%~dp0cd /d "%DIR%"setlocal enabledelayedexpansionfor /r %%i in (*.proto) do (
set pbname=%%i
set pbname=!pbname:~0,-5!b
protoc -I %DIR% --descriptor_set_out !pbname! %%i)echo "finished"
https://github.com/miaodadao/pbc
目录pbc-master下添加注册绑定Lua接口的头文件:pub-lua.h 内容如下:
#ifndef __LUA_PBC_EXTRA_H_#define __LUA_PBC_EXTRA_H_
#if defined(_USRDLL)#define LUA_EXTENSIONS_DLL __declspec(dllexport)#else /* use a DLL library */#define LUA_EXTENSIONS_DLL#endif
#if __cplusplusextern "C" {#endif
#include "lauxlib.h"
int LUA_EXTENSIONS_DLL luaopen_protobuf_c(lua_State *L);#if __cplusplus}#endif#endif
http://cn.quick-x.com/?p=253 Step 6: 编译 quick-x-player proj.win32 工程
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)
LOCAL_MODULE := quickextenpbcLOCAL_MODULE_FILENAME := libquickextenpbc
LOCAL_EXPORT_CFLAGS := -Wno-psabi -DUSE_FILE32API -DCC_LUA_ENGINE_ENABLED=1 -DDEBUG=1 -DCOCOS2D_DEBUG=1LOCAL_CFLAGS := -Wno-psabi -DUSE_FILE32API -DCC_LUA_ENGINE_ENABLED=1 -DDEBUG=1 -DCOCOS2D_DEBUG=1
LOCAL_WHOLE_STATIC_LIBRARIES := lua_pbc
include $(BUILD_STATIC_LIBRARY)$(call import-module,pbc-master)
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)
LOCAL_MODULE := lua_pbcLOCAL_MODULE_FILENAME := liblua_pbc
LOCAL_SRC_FILES := \src/alloc.c \src/array.c \src/bootstrap.c \src/context.c \src/decode.c \src/map.c \src/pattern.c \src/proto.c \src/register.c \src/rmessage.c \src/stringpool.c \src/varint.c \src/wmessage.c \binding/lua/pbc-lua.c \
LOCAL_C_INCLUDES+= \
src \
LOCAL_CFLAGS := -Wno-psabi -DUSE_FILE32API -DCC_LUA_ENGINE_ENABLED=1 -DDEBUG=1 -DCOCOS2D_DEBUG=1LOCAL_WHOLE_STATIC_LIBRARIES := cocos_lua_staticinclude $(BUILD_STATIC_LIBRARY)$(call import-module,scripting/lua/proj.android)
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := game_sharedLOCAL_MODULE_FILENAME := libgameLOCAL_SRC_FILES := hellocpp/main.cpp \../../sources/AppDelegate.cppLOCAL_C_INCLUDES := $(LOCAL_PATH)/../../sourcesLOCAL_CFLAGS += -Wno-psabi -DCC_LUA_ENGINE_ENABLED=1 -DDEBUG=1 -DCOCOS2D_DEBUG=1
LOCAL_WHOLE_STATIC_LIBRARIES := quickcocos2dxLOCAL_WHOLE_STATIC_LIBRARIES += quickextenpbc
include $(BUILD_SHARED_LIBRARY)
$(call import-module,lib/proj.android) \$(call import-module,luaproj.android)
http://cn.quick-x.com/?p=253
在Quick-cocos2dx中使用云风pbc解析Protocol Buffers,支持win、mac、ios、android的更多相关文章
- cocos2d-x 3.1 集成 云风pbc
cocos2d-x 3.x版本号变动比較大,从改用cmake管理整个项目,到使用python集成一体化的项目工具. 这些都是我喜欢的.我能够非常easy的在我的ubuntu上面搭建好开发环境,并且根本 ...
- (原)Ubuntu16中卸载并重新安装google的Protocol Buffers
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5782992.html 目前最新的是1.6.1 1. 卸载掉老版本的Protocol: sudo apt ...
- 云风pbc源码alloc.c
#include <stdlib.h> #include <stdio.h> // 用于统计内存的申请和释放次数匹配 ; void * _pbcM_malloc(size_t ...
- 【记录一个问题】云风的协程库 c conroutine无法在android下链接通过
链接出现以下错误: coroutine.c:139: undefined reference to `getcontext' coroutine.c:146: undefined reference ...
- Quick Cocos2dx Http通讯
服务端:Python 通讯协议:Http 参考文章: 1 用python实现一个基本的http server服务器 http://blog.sina.com.cn/s/blog_416e3063010 ...
- quick cocos2dx 3.x 配置win32工程
公司项目主体部分用c++,而ui部分用lua写,所以选择了用quick框架.项目先开发了ios/mac版,这两天试着配置其win32工程,遇到一些问题,记录一下(纯c++版本cocos2dx配置方法应 ...
- 转:云风skynet服务端框架研究
转: http://forthxu.com/blog/skynet.html skynet是云风编写的服务端底层管理框架,底层由C编写,配套lua作为脚本使用,可换python等其他脚本语言.sky ...
- quick cocos2d-x 入门---井字棋
学习quick cocos2d-x 第二天 ,使用quick-x 做了一个井字棋游戏 . 我假设读者已经 http://wiki.quick-x.com/doku.php?id=zh_cn阅读了这个链 ...
- 对云风 cstring 第二次解析
前言 从明天起 关心粮食和蔬菜 我有一所房子 面朝大海 春暖花开 本文前提条件 1.了解 posix 线程 2.了解 原子操作 3.具备简单C基础,或者 你也敲一遍. 如果上面不太清楚,你可以翻看我以 ...
随机推荐
- underscorejs-partition学习
2.25 partition 2.25.1 语法: _.partition(list, predicate, [context]) 2.25.2 说明: 拆分list为两个数组. 第一个数组的元素都满 ...
- Thread.sleep(0)的意义
我们可能经常会用到 Thread.Sleep 函数来使线程挂起一段时间.那么你有没有正确的理解这个函数的用法呢?思考下面这两个问题: 假设现在是 2008-4-7 12:00:00.000,如果我调用 ...
- 封装cookie组件
var Cookie = { // 读取 get: function(name){ var cookieStr = "; "+document.cookie+"; &qu ...
- VS2010 release 和 debug 调试区别
VC下Debug和Release区别 最近写代码过程中,发现 Debug 下运行正常,Release 下就会出现问题,百思不得其解,而Release 下又无法进行调试,于是只能采用printf方式逐步 ...
- odoo view field option, action flage 参数
options JSON object specifying configuration option for the field's widget (including default widget ...
- centos 下vmware 下添加硬盘到root
### #vmware 里找到硬盘拖大点...,如果不想从启动么,添加个新 #的也行.不过那个是另外的方法了 ### #### ##找下硬盘添加在哪里 #### fdisk -l //创建分 ...
- 开源java
http://code.google.com/p/nullpomino/source/checkout http://www.open-open.com/open254058.htm http://w ...
- Highways poj 2485
Description The island nation of Flatopia is perfectly flat. Unfortunately, Flatopia has no public h ...
- 图论(网络流,二分图最小点权覆盖):POJ 2125 Destroying The Graph
Destroying The Graph Description Alice and Bob play the following game. First, Alice draws some di ...
- MVVM模式中WPF数据的完全绑定
一:截图,描述:将后台代码的姓名.年龄绑定到文本框,单击”增加年龄“--年龄自+1,单击”显示年龄“--弹出年龄的显示对话框,实现了从文本框修改年龄和后台更改年龄并显示到文本框 运行结果和解决方案管理 ...