我遇到了這個錯誤,我每次運行我的應用程序時都會收到錯誤。錯誤是: loop or previous error loading module 'socket'
。加載模塊(Lua)時出錯
導致此錯誤的代碼是: socket = require("socket")
。
在第一個lua_pcall
期間發生此錯誤。這裏是調用該函數:
void startTerminal(int port, char host[80])
{
lua_State *L = lua_open();
/* Open Lua Library */
luaL_openlibs(L);
/* Choose the lua file that will run */
if(luaL_loadfile(L, "socket.lua")) {
lfatal(L, "luaL_loadfile() failed");
}
/* Start lua file */
if(lua_pcall(L, 0, 0, 0)) {
lfatal(L, "lua_pcall()");
}
/* Get connect function */
lua_getglobal(L, "connect");
if(!lua_isfunction(L, -1)) {
lua_pop(L, 1);
lfatal(L, "lua_isfunction() failed");
}
/* Setup arguments */
lua_pushnumber(L, port);
lua_pushstring(L, host);
/* Call the lua function */
if(lua_pcall(L, 2, 2, 0)) {
lfatal(L, "lua_pcall() failed");
}
/* Print out results */
printf("%s", lua_tostring(L, -1));
printf("%s", lua_tostring(L, -1));
lua_close(L);
}
這裏是我正在編譯代碼:
我是不是編譯過程中丟失任何開關或我錯過庫?
注意: 編譯器不會拋出任何錯誤並編譯乾淨。 在其他不包含C的Lua應用程序中,我對require("socket")
沒有任何問題。
感謝
非常感謝。我沒有意識到發生了。 – Koralarts