Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Lua и С++  (Прочитано 1731 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Lua и С++
« : 05 Мая 2012, 17:17:22 »
Доброго времени суток! Надо сделать програмку на С++ с использованием Луа. Доки нашел. Вот только уровень никспользователя у меня ужасный. Скачал с сайта source code. Кинул сначала h файлики в сам проект. Потом перекинул в /usr/include/ . Беру пример с gamedev.ru и пытаюсь компильнуть

#include <stdio.h>

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

int main(int argc, char* argv[ ])
{
  lua_State* luaVM = lua_open(0);
  if( NULL == luaVM )
  {
    printf("Error Initializing lua\n");
    return -1;
  }

  // Используем lua.

  char* strLuaInput = "a = 1 + 1;\n";

  lua_dostring(luaVM, strLuaInput);

  lua_close(luaVM);

  return 0;
}

Сразу получаю

make all
Building file: ../main.cpp
Invoking: GCC C++ Compiler
g++ -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"main.d" -MT"main.d" -o "main.o" "../main.cpp"
../main.cpp: In function ‘int main(int, char**)’:
../main.cpp:16:32: error: ‘lua_open’ was not declared in this scope
../main.cpp:25:23: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
../main.cpp:27:34: error: ‘lua_dostring’ was not declared in this scope
make: *** [main.o] Error 1

Ребят, что я не так сделал?

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5614
  • Все по палатам!
    • Просмотр профиля
Re: Lua и С++
« Ответ #1 : 05 Мая 2012, 17:24:09 »
Найди хидер где lua_open и т.д. описаны
Извините, я все еще учусь

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Re: Lua и С++
« Ответ #2 : 05 Мая 2012, 17:34:29 »
хммм забавно но таких действительно нет. Что тогда делать? Луа с офф сайта. Версия 5.2

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5614
  • Все по палатам!
    • Просмотр профиля
Re: Lua и С++
« Ответ #3 : 05 Мая 2012, 17:43:39 »
А чего не из реп ставил? Там и *-dev есть.
Извините, я все еще учусь

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Re: Lua и С++
« Ответ #4 : 05 Мая 2012, 17:50:01 »
да мне потом и под виндой собирать надо. Просто зашел и скачал

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5614
  • Все по палатам!
    • Просмотр профиля
Re: Lua и С++
« Ответ #5 : 05 Мая 2012, 17:54:37 »
Странно, что компилятор не выдал ошибку что нет файла lua.h. Может от есть, где-то в /usr/local...
Извините, я все еще учусь

Оффлайн WereBeast

  • Любитель
  • *
  • Сообщений: 85
    • Просмотр профиля
Re: Lua и С++
« Ответ #6 : 06 Мая 2012, 19:35:01 »
apt-cache search lua-dev
libtolua-dev - Tool to integrate C/C++ code with Lua - development files

Программирую пропаганду
Windows - в гландах

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Re: Lua и С++
« Ответ #7 : 13 Мая 2012, 23:44:50 »
Ребят. Простите идиота. Неделю не мог добраться к Луа. Называется добрался... итак по порядку.
apt-cache search lua-dev
libtolua-dev - Tool to integrate C/C++ code with Lua - development files

ввел получил точно такое же.

Странно, что компилятор не выдал ошибку что нет файла lua.h. Может от есть, где-то в /usr/local...

я же хидеры туда и кинул :)

В общем ситуация какова. Скачал Луа с офф сайта. Бросил либы и хидеры в системные папки. Пытаюсь скомпилить пример получаю ошибку которую описал в первом посте. На самом деле там действительно в хидерах нету ф-ции. Предпологаю что пример написан под старую версию. Взял другой пример - исход такой же. Думаю ладно. Попробую под винду. Там мне с программингом немного удобней. Начал искать. Оказывается на винду немного забили и нашел последнюю версию годовой давности (5.15, хотя уже есть 5.2). Скачал. Якобы подключил хидеры и всё такое. Беру опять таки первый пример который нашел в инете - ошибка линковщика. Вроде всё в порядке. Начал гуглить, как сказал гугл "пример битый". Руки опустились ковырять виндовый вариант. Вернулся к никсам. Зашел на http://lua-users.org/wiki/CallingLuaFromCpp и взял пример. Опять таки ругается на строчку
../main.cpp:22:29: error: ‘lua_open’ was not declared in this scope
../main.cpp:29:22: error: ‘luaopen_loadlib’ was not declared in this scope
этого понятно нету. Так же после нескольких часов гугления я так и не вкурил куда, как и в какой последовательности инсталить Луа. Где есть рабочий(!!!) пример хотя бы даже какой то мелочи и как в принципе это дело завести? Всякий раз я когда я пытался собрать эти пузли я получал разные ошибки. Как понимаю везде разные примеры под разные версии.

Посоветуйте что делать с моими руками. Как их выпрямлять, какой наковальней бить по пальцах дабы сотворить рабочий пример рабочего Луа. Благодарю!

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Lua и С++
« Ответ #8 : 14 Мая 2012, 08:53:07 »
lua patch будущее.
Wars ~.o

Оффлайн Señor_Gaga

  • Забанен
  • Активист
  • *
  • Сообщений: 878
  • Ubuntu 12.04LTS & Linux Mint 13LTS "Maya"
    • Просмотр профиля
Re: Lua и С++
« Ответ #9 : 14 Мая 2012, 09:41:52 »
Ясно же написано, перед использованием не продекларировано открытие Lua:
../main.cpp:16:32: error: ‘lua_open’ was not declared in this scope

В этом направлении и копайте.

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Re: Lua и С++
« Ответ #10 : 14 Мая 2012, 21:06:47 »
Эм простите. Ясно что? :) Вы прочтите хотя бы пост выше или первый пост , без разницы. Я же там тоже ясно написал что в хидерах нету lua_open

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5614
  • Все по палатам!
    • Просмотр профиля
Re: Lua и С++
« Ответ #11 : 14 Мая 2012, 21:12:16 »
в хидерах нету lua_open
Так найди, где это есть
Извините, я все еще учусь

Оффлайн VlaoMao

  • Активист
  • *
  • Сообщений: 308
  • ArchLinux - eMachines e725 && Nokia N950
    • Просмотр профиля
Re: Lua и С++
« Ответ #12 : 15 Мая 2012, 07:15:29 »

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Re: Lua и С++
« Ответ #13 : 15 Мая 2012, 10:00:58 »
Ребят. Я Вам о Петре, Вы мне о Иване. Я вот с того сайта уже брал пример. Не компильнулось. Я же говорю что у меня такое впечатление что примеры написаны под старую Луа. На новой ни один не собирается.

 

Страница сгенерирована за 0.019 секунд. Запросов: 21.