2009年3月28日

有爱的lunatic python

还是在做上篇blog说的某半所见即所得的的ui编辑器,终于快搞定了。有时间可以写写里面用到的一个好玩的库。
lunatic python

用途是让你能在python中调用lua,在lua中调用,在python中调用lua中的python... 恩。大概就是这样...

具体的使用方法见项目主页,用法很简单,有兴趣的还可以看看代码,也非常简单,支持自省,基于C的动态语言互相沟通还真简单。

然则这个项目更新有点慢,在ubuntu的Lua5.1下不能正常编译,要参照 lua-user wiki 上文章做些修改.

最后有个小tips,如果打算在python中调用lua,载入lua的第三方c库,要在python中先执行

import sys, dl
sys.setdlopenflags(dl.RTLD_NOW|dl.RTLD_GLOBAL)
import lua

然后才能lua.require("ooxx"). 因为linux下lua的第三方库都是不指定动态链接liblua.so的,python默认import用的dlopen又是RTLD_LOCAL,不会把lua模块的符号表给后面的库使用,
后面的C库就会找不到lua的C函数的。

没有评论: