sqlite3模块已成功编译到我的C程序中,静态链接。但是,这个模块似乎还没有注册。在Lua脚本中,“require'luasql.sqlite3'的调用总是失败的。其他一些模块调用luaL_register函数来注册自身。但在luaopen_luasql_sqlite3函数中不调用luaL_寄存器。在这种情况下如何注册luasql.sqlite3?我使用Lua-5.1.5。
The source code of luaopen_luasql_sqlite3 is at the bottom

最佳答案

下面是将luaopen_u函数放入package.preload表的方法。

lua_getfield(L, LUA_GLOBALSINDEX, "package");
lua_getfield(L, -1, "preload");
lua_pushcfunction(L, luaopen_socket_core);
lua_setfield(L, -2, "socket.core");

关于c - Lua:如何将luasql.sqlite3嵌入C程序(静态链接)中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12236032/

10-08 21:42