目录

  • 摘要
  • 环境
  • 资源
  • 并未正式开始
    • 思路
    • 问题
    • 参考

摘要

本文本来是想介绍JSB自动绑定,但在为自动绑定工具搭建运行环境时,发现对运行环境的要求有些苛刻。pythonyamlcheetah都需要32位的版本,可我机器上装的都是64位的版本。如果重新安装,不确定会对现有的工具有什么影响。故在此只对一些资源、工具以及思路做一些记录,之后如果有心思折腾,再重新整理。

环境

  • Python 2.7.3 (32bit)
  • PyYAML 3.10 (32bit)
  • Cheetah 2.4.4 (32bit)
  • NDK r16

资源

  • 官方教程
  • bindings-generator
  • Python 2.7.3 (32bit)
  • PyYAML 3.10 (32bit)
  • Cheetah 2.4.4 (32bit)
  • NDK r16
  • LLVM

并未正式开始

思路

自动绑定工具由两部分组成,一个bindings-generator,负责生成代码,一个tojs,负责相关配置。
他们可以在Cocos Creator的安装目录下的cocos2d-x/tools目录中找到,例如我的在
D:\CocosDashboard_1.0.14\resources\.editors\Creator\2.4.4\resources\cocos2d-x\tools

如果环境搭建完成,并对需要绑定的类进行了配置,那么执行genbindings.py脚本,就会在Cocos Creator安装目录/cocos2d-x/cocos/scripting/js-bindings/auto目录下生成hppcpp文件,其中就是绑定的相关代码。
这里注意到,生成的文件是在Cocos Creator安装目录下,这么直接在Cocos Creator安装目录折腾并不太好。
同时,tojs目录下有许多自带的ini配置,每次运行genbindings.py脚本均会重新生成所有的绑定代码。如果之前有手动更改绑定代码,这样执行就会将手动修改的部分直接覆盖掉。

所以计划是将自动绑定工具(bindings-generatortojs)拷贝出来单独存放,生成的绑定代码再手动拷贝到构建工程中。

问题

Cocos Creator 2.4.4中自带的bindings-generator与资源中的bindings-generator是相同的,都是需要32位版本的环境。
引用自资源中bindings-generatorREADME.md
Windows 7 64bit

  • Download python2.7.3 (32bit) from (http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi).
  • Add the installed path of python (e.g. C:\Python27) to windows environment variable named ‘PATH’.
  • Download pyyaml from http://pyyaml.org/download/pyyaml/PyYAML-3.10.win32-py2.7.exe and install it.
  • Download Cheetah-2.4.4.tar.gz, extract and install it by python setup.py.
  • Download NDK r16 from google
  • Set the environment variables (PYTHON_ROOT and NDK_ROOT) or just them in test.bat.
  • Run “test.bat”. The generated codes will be under “simple_test_bindings”.

我尝试从 http://releases.llvm.org/download.html#5.0.0 下载Windows 64-bit版本的LLVM,Clang for Windows (64-bit),安装后从安装目录下找到libclang.dll,并将其拷贝到bindings-generator/libclang目录中替换原先的libclang.dll,但依旧没有让脚本成功运行。
可能是工具中的其他脚本都是针对32-bit进行编写的,没有对64-bit进行兼容。

参考

  • 解决LibclangError: [Error 193] %1 不是有效的 Win32. To provide e Config.set_library_path() or Config.

Cocos Creator JSB [Lv.2] TODO相关推荐

  1. Cocos Creator JSB [Lv.1] (1)

    目录 摘要 系列文章 JSB能做什么 环境 资源 准备工作 正式开始 对工程做一些修改 如何互动 小姐姐现身 与小姐姐互动的桥梁 找到小姐姐 划重点 摘要 本系列文章主要实操JSB的手动绑定,在官方教 ...

  2. Cocos Creator JSB [Lv.1] (3)

    目录 摘要 系列文章 正式开始 准备礼物 怎么送 送礼物 seval_to_Gift 最终效果 在 Android 平台测试 划重点 摘要 承接上文 Cocos Creator JSB [Lv.1] ...

  3. Cocos Creator JSB [Lv.3]

    目录 摘要 资源 正式开始 为什么要使用`JSB` `JSB`能做什么 进行`JSB`绑定需要做什么 构建工程 创建类 绑定(搭建桥梁) 实现自定义的类型转换(非必须) 注册 将新增的文件加入`lib ...

  4. java中JSB_深入解析Cocos Creator JSB绑定原理以及应用实践

    背景 一直以来,ABCmouse 项目中的整体 JS/Native 通信调用结构都是基于 callStaticMethod evalString 的方式.通过 callStaticMethod 方法我 ...

  5. Cocos Creator jsb手动绑定C++

    使用的是cocos creator 2.4.3版本:直接贴代码,结构如下: 在CocosDashboard\resources.editors\Creator\2.4.3\resources\coco ...

  6. Cocos Creator JSB绑定

    至于绑定所需要的环境,自己百度,文章最后提供部分环境依赖 D:\CocosCreator 为Cocos Creator安装目录 在D:\CocosCreator\resources\cocos2d-x ...

  7. Cocos Creator JSB绑定 MAC系统环境

    编译环境 python2.7(mac自带) 1.安装PyYAML mac: sudo easy_install pyyaml win: pip install pyyaml 2.安装Cheetah 下 ...

  8. Cocos Creator 2D摄像机 [Lv.1] 小视图

    目录 摘要 环境 资源 准备工作 正式开始 对工程做一些修改 如何互动 上摄像机 缩放(看清黑头和脂肪粒) 动起来 辅助的边框 得有边界 用分组解决个bug 划重点 摘要 本系列文章主要实操2D摄像机 ...

  9. json list格式_来来来,一文让你读懂Cocos Creator如何读写JSON文件

    前言 在游戏开发过程中,读取配置文件是必不可少的,而使用JSON做配置文件又比较常见,本文重点给大家讲述如何在Cocos Creator开发中读取和解析JSON数据文件以及如何写JSON文件. 一.J ...

最新文章

  1. 反转链表的golang实现
  2. c+还是python好-既然C+不如Java、Python,为什么还要学C+?
  3. vb编写脚本能让计算机屏幕黑屏,,win7上设置颜色黑屏
  4. python爬取百度百科表格_第一个python爬虫(python3爬取百度百科1000个页面)
  5. python输入一个列表的语句_python自学笔记使用if语句处理列表作业
  6. 【NOIP2016PJ】【Luogu2058】海港
  7. SP1693 COCONUTS - 题解
  8. jQuery选择器的演示
  9. asp打开exe执行本地程序._ASP.NET Core Web实现Windows 服务功能
  10. C/C++ Npcap包实现ARP欺骗
  11. 计算机毕业设计Java智能交通管控系统(源码+系统+mysql数据库+Lw文档)
  12. Web 前端学习 案例三之制作网页表单
  13. 北京簋街 美食完全攻略 + 簋街好吃的夜宵去处-----店铺介绍大全
  14. 战争迷雾效果 第1章_要探索,不要地图全开!
  15. 《Python数据科学手册》—学习笔记
  16. Vue nvm重装node和npm与vue3报错Emitted ‘error‘ event on ChildProcess instance at errno: -4058
  17. 关于DM8168平台扩展PCIE网卡的问题
  18. oracle 数据类型是什么,oracle的数据类型有哪些?
  19. excel中表格行高最大值是多少?如果超过了怎么调整?
  20. Python-matplotlib用法

热门文章

  1. 笔试强训第三周编程题part01(年终奖,迷宫问题;微信红包,计算字符串的距离;小易的升级之路,找出字符串中第一个只出现一次的字符,洗牌)
  2. 从零实现并扩展可自由绘制的画板
  3. 基于nginx-rtmp-module搭建直播系统
  4. 自监督表征学习方法——BYOL(Bootstrap Your Own Latent)
  5. Python+Neo4j+红楼梦
  6. OpenPCDet的conda环境搭建---点云3D物体检测
  7. OpenGL教程一,窗体和图形的渲染(包含OpenGL、GLFW、GLAD)
  8. 在一个公司待半年多了,天天打杂,害怕学不到技术,怎么办?
  9. 零基础学插画的4个必学知识点
  10. 遇见狂神说JavaWeb笔记详解