本篇以cocos2d-x-3.17.2版本为例
一、环境安装
环境要求可参考 cocos2d-x-3.17.2\tools\tolua\README.mdown 文件中内容。
windows如下:
* Make sure that you have installed `android-ndk-r16` or later.
* 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.11.win32-py2.7.exe and install it.
* Download [Cheetah-2.4.4.tar.gz](https://pypi.python.org/packages/cd/b0/c2d700252fc251e91c08639ff41a8a5203b627f4e0a2ae18a6b662ab32ea/Cheetah-2.4.4.tar.gz#md5=853917116e731afbc8c8a43c37e6ddba), extract and install it by `python setup.py`.
* Set environment variables `NDK_ROOT` and `PYTHON_BIN`
* Go to "cocos2d-x/tools/tolua" folder, and run "genbindings.py". The generated codes will be under "cocos\scripting\auto-generated\lua-bindings".
1、下载安装 android-ndk-r16 及以上版本
此处为避免后续出错,建议忽略 “及以上版本”, 下载安装提示中 android-ndk-r16 版本即可。
ndk下载地址 https://developer.android.google.cn/ndk/downloads/older_releases.html
下载后解压至全英文路径 ndk_path 下即可
2、下载 python2.7.3 (32bit)
地址 http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi
下载安装上述链接中python的2.7.3 32位版本
3、添加windows的python的环境变量
4、安装32位 pyyaml模块
下载python的pyyaml模块,地址 http://pyyaml.org/download/pyyaml/PyYAML-3.11.win32-py2.7.exe
安装上述链接中的32位 pyyaml模块,其他安装方式也可,需注意为32位
5、安装Cheetah环境
其他安装方式也可,32位即可
下载后解压至全英文路径下, cmd进入解压后的目录,执行以下命令
python setup.py build
python setup.py install
注:安装python库如出现类似 UnicodeDecodeError: 'ascii' codec can't decode byte 0xb7 in position 7: ordinal not i
或者 UnicodeDecodeError: ‘utf8’ codec can’t decode byte 0xb7 in position 9: inval 时,解决办法如下
打开安装pyhton目录下的lib\mimetypes.py文件
在import下面加入这代码
if sys.getdefaultencoding() != 'gbk':
reload(sys)
sys.setdefaultencoding('gbk')
6、设置环境变量 `NDK_ROOT` 和 `PYTHON_BIN`
PYTHON_BIN : 操作系统指定系统环境变量 PYTHON_BIN = C:\Python27\python.exe
NDK_ROOT : 在 cocos2d-x-3.17.2\tools\tolua 的genbindings.py中设置 NDK_ROOT 的值为 第1步中的 ndk_path ,即ndk的安装路径
7、执行 cocos2d-x/tools/tolua 下的 genbindings.py 文件,生成的代码文件在 "cocos\scripting\auto-generated\lua-bindings" 下
二、ini配置文件及genbindings.py生成脚本
待续……