Я сомневаюсь, что sudo
поможет. Проблема в том, что GCC не может найти lua.h
, что означает, что вы не сказали, где найти файлы разработчиков, необходимые для компиляции программ, которые связаны с ядром Lua. Вероятно, вам нужно определить папку, такую как /usr/local/lua/include
.
Возможно также, что у вас установлен исполняемый пакет Lua, но не пакет разработчика. Если это так, вам нужно будет найти и установить этот пакет. Команда типа
$ apt-get install liblua5.1-0-dev
делает это для Lua 5.1.
Если вы строите Lua 5.2 из источника, то у вас есть все необходимые вам файлы, вам просто нужно сообщить makefile srlua, где их найти.
Я успешно построил и использовал srlua на Windows с Lua 5.1, но не нужно было попробовать это на Ubuntu, так что я не могу быть более конкретным.
Update:
С вашего Pastebin, попробуйте следующее:
# these will probably work if Lua has been installed globally
LUA= /usr/include/lua5.1
LUAINC= /usr/include/lua5.1
LUALIB= /usr/lib/lua/5.1
LUABIN= /usr/bin
Вы были опечатка в определении $(LUAINC)
. Вам нужно будет найти liblua.a и назовите правильную папку в определении $(LUALIB)
. У меня нет пакетов lua dev, установленных на моем удобном ящике Ubuntu, поэтому я не уверен, где он был поставлен.
Обновление 2: Вы становитесь ближе, так как вы прошли конфигурацию компилятора и проблемы конфигурации компоновщика.
На моем поле Ubuntu библиотека Lua выглядит /usr/lib/liblua5.1.a
, и нет файла с именем liblua.a
. Так что для меня -llua
не может работать. Я был в состоянии составить простейший «привет мир» ...
#include "lua.h"
#include "lauxlib.h"
int main(int argc, char **argv)
{
lua_State *L = luaL_newstate();
luaL_openlibs(L);
luaL_dostring(L, "print('hello, '.._VERSION)");
return 0;
}
с командой
$ gcc -I/usr/include/lua5.1 -o hello hello.c -llua5.1 -lm
$ ./hello
hello, Lua 5.1
$
Может быть, вы должны сделать подобную минимальный пример работу, а затем вернуться к тонкой настройке srlua
Makefile ,
Добро пожаловать в SO. Я редактировал некоторые базовые форматирования, чтобы сделать вопрос более понятным и понятным. – RBerteig
Вы не используете последнюю версию srlua для Lua 5.1. См. Http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/#srlua. – lhf
Я исправил это Спасибо за указание. он все еще не работает. – Anthony