@ProLua

Страница 111 из 307
bebebe
17.07.2017
21:36:02
куда копать?

Vadim
17.07.2017
21:46:01
по-моему, ответ очевиден и прямо следует из текста ошибки

bebebe
17.07.2017
21:46:53
по-моему, ответ очевиден и прямо следует из текста ошибки
вы видимо до этого не имели опыта с модулем alien и alien.struct

Vadim
17.07.2017
21:47:38
а при чём тут имение дел, если ошибка интерпретатора

Google
Vadim
17.07.2017
21:47:43
и он явно говорит что именно не так

bebebe
17.07.2017
21:51:06
ясно понятно, как бы вы решили эту ошибку?

Philipp
17.07.2017
21:51:08
Вадим, на самом деле, ошибка не сильно очевидная

Я бы предположил, что проблемы с путями поиска интерпретатора

bebebe
17.07.2017
21:52:16
find / | grep -i alien | grep -i struct | wc -l

0

мне нужен firebird sql client асинхронный

Philipp
17.07.2017
21:53:07
Линукс?

bebebe
17.07.2017
21:53:11
дыа

alpine3.6 (если это имеет значение)

Philipp
17.07.2017
21:53:22
Через консоль запускаешь?

bebebe
17.07.2017
21:53:28
дыа, рут

Philipp
17.07.2017
21:53:41
Посмотри, луарокс указывает, куда ставит

Google
bebebe
17.07.2017
21:55:00
я знаю куда он ставит, весь вопрос в том то ли модуль fbclient протух и хочет того что нет, либо одно из двух

Philipp
17.07.2017
21:55:31
alien.struct – изменененная либа struct от РИ

И по идее он должен ставиться при установке alien

bebebe
17.07.2017
21:55:59
да, это я тоже прочитал

но не ставит, и файла такого нет, ни .lua, ни .so

я руками скомилировал тот struct от которого "форкнулся" проект alien.struct - но он настолько древний что половину символов судя по ldd не находит

Error relocating ./struct.so: lua_isnumber: symbol not found Error relocating ./struct.so: luaL_addlstring: symbol not found Error relocating ./struct.so: lua_gettop: symbol not found Error relocating ./struct.so: luaL_checkstack: symbol not found Error relocating ./struct.so: luaL_checklstring: symbol not found Error relocating ./struct.so: lua_pushnumber: symbol not found Error relocating ./struct.so: lua_pushlstring: symbol not found Error relocating ./struct.so: lua_pushnil: symbol not found Error relocating ./struct.so: luaL_error: symbol not found Error relocating ./struct.so: lua_tonumber: symbol not found Error relocating ./struct.so: lua_settop: symbol not found Error relocating ./struct.so: lua_pushfstring: symbol not found Error relocating ./struct.so: luaL_checknumber: symbol not found Error relocating ./struct.so: luaL_buffinit: symbol not found Error relocating ./struct.so: luaL_pushresult: symbol not found Error relocating ./struct.so: luaL_argerror: symbol not found Error relocating ./struct.so: luaL_optinteger: symbol not found Error relocating ./struct.so: luaL_prepbuffer: symbol not found Error relocating ./struct.so: luaL_register: symbol not found Error relocating ./struct.so: lua_pushinteger: symbol not found

я в замешательстве

Philipp
17.07.2017
21:57:35
Сейчас поставлю и потещу

Ахах

configure: error: in `/private/tmp/luarocks_alien-0.7.1-2-4256/alien': configure: error: cannot find new enough libffi See `config.log' for more details Error: Build error: Failed building.

bebebe
17.07.2017
21:58:46
поставьте libffi и libffi-dev

Philipp
17.07.2017
21:59:02
Можно на ты, да

bebebe
17.07.2017
21:59:25
если это только поможет делу

Philipp
17.07.2017
21:59:31
Поможет :)

bebebe
17.07.2017
21:59:47
поставь пакетным менеджером линукса libffi и libffi-dev

Philipp
17.07.2017
21:59:53
Ага, сейчас сделаю

bebebe
17.07.2017
22:00:46
если что, вот мой докер контейнер https://hastebin.com/cagesubigi.tex

Philipp
17.07.2017
22:01:05
libffi-dev у себя вообще не нахожу, а libffi и так стоит...

Google
bebebe
17.07.2017
22:01:17
а что за система?

rpm-based?

Philipp
17.07.2017
22:02:14
Вообще, OSX. Но luarocks один и тот же, поэтому нужно только заставить его поставиться. Я верю, что alien должен ставить struct

bebebe
17.07.2017
22:02:48
тогда не знаю, я с макосью не очень luarocks когда ставит alien пытается компилировать код он требует хедеров от libffi

я все же подозреваю что luarocks install fbclient ставит что-то древнее, которое когда-то использовало alien.struct, далее в alien что-то поменялось, и alien.struct пропало

Philipp
17.07.2017
22:06:51
Какая версия fbc?

Попробуй в Луа файле написать типа local struct = require'alient.struct'

bebebe
17.07.2017
22:10:07
это я уже пробовал module 'alient.struct' not found:

Philipp
17.07.2017
22:10:22
Хм, а alien поставился сам?

bebebe
17.07.2017
22:10:50
да

luarocks show fbclient |head -n3 fbclient 0.5.0-1 - A pure-Lua binding of the Firebird client library

luarocks show alien |head -n3 alien 0.7.1-2 - Lua->C FFI

Philipp
17.07.2017
22:12:46
У алиана сайт протух. У них там последняя версия – 0.5

bebebe
17.07.2017
22:13:05
дыа

Philipp
17.07.2017
22:13:31
А поставь 0.5

Пытаюсь найти как указать версию в Луарокс

bebebe
17.07.2017
22:15:51
luarocks install <package> version

http://luarocks.org:8080/modules/luarocks/fbclient

есть 0.5.0 и 0.4.0

попробовал поставить 0.4.0 ошибка поменялась /usr/bin/lua: /usr/local/openresty/luajit/share/lua/5.1/alien.lua:1: module 'alien_c' not found:

Google
Philipp
17.07.2017
22:18:00
У тебя слишком новый alien

Поставь 0.5.0-1

bebebe
17.07.2017
22:18:09
видимо нужен постарее alien

да

Philipp
17.07.2017
22:18:20
luarocks install alient 0.5.0-1

bebebe
17.07.2017
22:18:43
ога

так, там видимо нужен еще и старый lua

alien не ставится

rc/alien/core.c:1412:30: error: array type has incomplete element type 'struct luaL_reg' static const struct luaL_reg alienlib[] = {

Philipp
17.07.2017
22:19:33
У тебя Луа 5.2?

Admin
ERROR: S client not available

Philipp
17.07.2017
22:20:37
Ага, там хедера нет нужного в 5.2

Нужен 5.1

bebebe
17.07.2017
22:20:53
5.1 поставил

заработало, во всяком случае require прошел

теперь попробую сделать запрос

спасибо

Philipp
17.07.2017
22:24:34
Да не за что, в общем-то =)

bebebe
17.07.2017
22:24:40
но я не уверен что оно теперь в openresty заработает

и несколько удивлен почему не работает с последними версиями

Google
Philipp
17.07.2017
22:25:33
Потому что я так думаю в Луа 5.2 либу struct поменяли, и она мб стала неактуальной для Alien'а

А fbclient не обновили

Vadim
17.07.2017
22:44:08
5.1 поставил
а не проще было бы тогда уж сразу LuaJIT взять?

Philipp
17.07.2017
22:44:43
Но, собственно, я потом так и сделал, когда понял, что сайт алиена устарел

Vadim
17.07.2017
22:46:01
(ну, это не столько к bebebe, сколько к авторам fbclient)

если оно всё равно только 5.1 A{P,B}I умеет, то можно было бы не к чужому привязываться, а к LuaJIT'у. И FFI, и другие плюшки из коробки и даже бекпорт няшностей из 5.2/5.3 :-/

bebebe
17.07.2017
22:48:37
а еще вопрос, есть ли альтернативные способы в lua подключиться асинхронно к firebird базе? может odbc какой есть

я еще не гуглил

Vadim
17.07.2017
22:49:21
/me бы вообще желал чтобы Firebird ещё лет 40 назад закопали и больше не откапывали

FailsBot
17.07.2017
22:49:23
Vadim бы вообще желал чтобы Firebird ещё лет 40 назад закопали и больше не откапывали

bebebe
17.07.2017
22:50:18
понятненько...

а по сути вопроса есть чо? а то в прошлый раз вы мне советовали alien.struct поставить

Philipp
17.07.2017
22:51:06
(Справедливости ради скажу, что я ничо не советовал :D)

bebebe
17.07.2017
22:51:06
есть слово такое legacy, и мне приходится с ним работать

Филип я не тебе,а Вадиму

Vadim
17.07.2017
22:51:36
я тоже ничего не советовал

bebebe
17.07.2017
22:51:52
ну тогда респект таким пацанам

Vadim
17.07.2017
22:52:24
а "по теме" - я было дело уже начал писать ответ, что firebird ровно так же не нужен и большинству других lua девелоперов, поэтому шанс, что есть вообще работающая прослойка минимален, а что есть асинхронная и того меньше

но это тоже не по теме, если по сути

Страница 111 из 307