2010-03-14 42 views
5

我无法在Arch Linux下正确启动lua。 Lua - 最新版本。这里是我的代码:Lua - 正在初始化

#include <stdio.h> 
extern "C" 
{ 
    #include <lua.h> 
    #include <lauxlib.h> 
    #include <lualib.h> 
} 

int main() 
{ 
    lua_State *luaVM = luaL_newstate(); 
    if (luaVM == NULL) 
    { 
     printf("Error initializing lua!\n"); 
     return -1; 
    } 

    luaL_openlibs(luaVM); 
    lua_close(luaVM); 

    return 0; 
} 

/tmp/cc0iJ6lW.o:在功能main': test_lua.cpp:(.text+0xa): undefined reference to luaL_newstate”。

test_lua.cpp :(文字+ 0x34):未定义的引用`luaL_openlibs'

test_lua.cpp :(文本+ 0x40的):未定义参考`lua_close” collect2:LD

返回1个退出状态

怎么回事?

+5

你用'-llua'和'-llualib'链接了吗? – kennytm

+0

忘记:(谢谢,如果主题中没有答案但是问题已解决,该怎么办? – Ockonal

+2

如果KennyTM将它放入答案或放入答案(社区wiki?),我想要等待自己回答。 –

回答

5

您需要通过传递-llua-llualib标志来链接到Lua库。

+4

Lua 5.1中没有-llualib。 – lhf