我试图将lua嵌入到c程序中,但是在编译代码时遇到了问题。我已经在突触中安装了与lua 5.2相关的所有内容,并在尝试编译时:

extern "C"{
#include <stdio.h>
#include <string.h>
#include "lua5.2/lua.h"
#include "lua5.2/lauxlib.h"
#include "lua5.2/lualib.h"
}

int main(int argc, char* argv[])
{
    lua_State *lua_state;
    lua_state = luaL_newstate();
    lua_close(lua_state);
}


并使用编译


  g ++ main.cpp -llua


显示以下错误


  找不到-llua


做什么?

最佳答案

您可以使用一些工具来为库找到合适的编译器/链接器开关。

特别是,通过正确安装lua5.2库,您可以使用

pkg-config -libs lua5.2


在我的系统上它输出

-llua5.2


使用它,或将pkg-config的输出(反引号)用作链接器参数。

当然,pkg-config也可以告诉您-CFLAGS的软件包

pkg-config --cflags lua5.2


手册页可读性强。

关于c++ - 在C++中使用Lua,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25350598/

10-12 12:54