Вызов скрипта Lua из C: ошибки - PullRequest
1 голос
/ 22 июня 2010

Я новичок в Lua и вообще пишу привязки.В данный момент я просто пытаюсь скомпилировать первый найденный пример здесь (с функциями, обновленными до Lua 5.1).

#include <stdio.h>

#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"

/* the Lua interpreter */
lua_State* L;

int main ( int argc, char *argv[] )
{
    /* initialize Lua */
    L = luaL_newstate();

    /* load various Lua libraries */
    luaL_openlibs(L);
        luaopen_table(L);
        luaopen_io(L);
        luaopen_string(L);
        luaopen_math(L);

    /* cleanup Lua */
    lua_close(L);

    return 0;
}

Когда я компилирую, используя gcc -oinit init.c -Wall -I / usr / local / include -L / usr / local / lib -llua -lliblua Я получаю следующую ошибку:

... / .. / i486-pc-linux-gnu / bin / ld: не может найти -lliblua
collect2: ld вернул 1 состояние выхода

Файл liblua.a находится в / usr / local / lib, но по какой-то причине компиляторне могу найти это?Что я делаю не так?

Ответы [ 2 ]

7 голосов
/ 22 июня 2010

Файл liblua.a включается параметром -llua.Указание -lliblua пытается найти файл libliblua.a, который не существует.Итак, просто удалите -lliblua из вашей команды сборки.

1 голос
/ 22 июня 2010

Там нет -lliblua в 5.1.

...