在toolstolua目录下有个README,里面详述了在各个平台下怎么使用,这里只是稍微记述下windows下面的使用和遇到的问题。
1.首先下载Android NDK,版本r9b以上,自己网上找下,然后配置下环境,系统–高级系统设置–高级–环境变量,在自己用户的环境变量中新建,变量名从genbindings.py中可以看到是NDK_ROOT,变量值就是你Android NDK的路径。
2.下载 Python ,版本2.7.3以上,一定要32位的。官网上面找下http://www.python.org。然后还是配置环境变量,在系统变量中path中,添加2个,1个是python的路径,还有1个是python目录下的Scripts。变量设置好,这里要稍微改下python的东西,因为python默认是ASCII编码,在windows上面直接用pip下载模块的话,会有编码问题。所以在python根目录下的Libmimetypes.py 中,在最上面的import后面加上
if sys.getdefaultencoding() != “gbk”: reload(sys) sys.setdefaultencoding(“gbk”)
注意python的缩进。然后重启cmd,就可以开心的使用pip了。
3.pip是python管理模块包的工具,在cmd中输入pip help 就能看到相关的帮助。根据README中的描述,在python中我们还需要用到2个模块,pyyaml,Cheetah。直接pip install pyyaml ,pip install Cheetah 就可以了。
基本的环境都搭好了,接下来就是开始编写自己的描述文件。在toolstolua 下面,可以看到有许多的.ini文件,这就是需要的描述文件。随便找一个copy一份,打开,我们只要照着之前的模板,稍微修改就行。
prefix = 改成自己的.int的名字
target_namespace = 在lua中调用的名字,
headers = 这是最重要的,我们自己写的c 头文件的路径
classes = 导出的c 类
接下来再copy一份genbindings.py,改成自己的名字,需要修改的是
output_dir = 这里可以改成你需要的导出的路径或者不改
cmd_args = {‘cocos2dx.ini’ : (‘cocos2d-x’, ‘lua_cocos2dx_auto’), 中有一大堆这样的描述,照着样子,改成自己的 .ini 和.ini的名字,最后lua_cocos2dx_auto随便改,这是生成的中间文件,当然最好是按着一定的格式改,这样方便查找。
最后一定要在本目录下,运行刚刚改写的python来生成中间文件。如果一切顺利的话,将生成的.cpp,.hpp添加到编译器中,重新编译,然后在lua中就可以调用了
这里只是记述一下大致的流程,主要还是备忘下python的编码格式
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/184009.html原文链接:https://javaforall.cn