首先按照在windows下的编译lua源码的方法编译出lua.lib、lub.dll,将其和lua的头文件一起放在lpeg的源码目录下。
打开vs的命令行工具,注意要和编译lua源码所用的工具一致。
切换到lpeg源码目录:注意需要先修改lpeg的源码,lptree.c文件中的luaopen_lpeg函数需要加上导出声明,否则require不能正确加载库
int __declspec(dllexport) luaopen_lpeg (lua_State *L);
int __declspec(dllexport) luaopen_lpeg (lua_State *L) {}
编译:cl /MD /O2 /c *.c
链接:link /DLL /OUT:lpeg.dll *.obj lua.lib
最终生成lpeg.dll
运行lua test.lua完成测试
另外在某台机器上碰到个奇怪的问题,需要修改luaopen_lpeg中的lpeg名称以及最终生成的dll名称,比如改成pegl
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。