【发布时间】:2014-10-10 14:47:38
【问题描述】:
我正在尝试将 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
做什么?
【问题讨论】:
-
使用
-L/path/to/lib -
请决定:应该是 C 程序还是 C++ 程序?顺便说一句:您可以将 Lua 编译为 C 和 C++,尽管我会使用 C。此外,
<stdio.h>和<string.h>都不应该包含在extern "C"-block 中。 -
@redFIVE 喜欢这个? g++ main.cpp -L/usr/lib/lua/5.2/ -llua 。还是找不到-llua
-
那个目录里有
liblua.so吗? -
@Deduplicator No o.O 。我的电脑上的任何地方都有 rdd.so 并且没有 liblua.so。为什么不?我已经安装了所有 lua5.2 disponible。