2016-06-01 3 views
0

У меня установлена ​​limlib2 и все, и я проверил каталоги, чтобы увидеть, существует ли она, и limlib2 есть. Я скомпилировать LUA кода, который используетLua Error Загрузка библиотеки Limlib2, даже если она уже установлена?

require("limlib2") 

Я получаю эту ошибку:

lua: error loading module 'limlib2' from file '/usr/local/lib/lua/5.3/limlib2.so': dlopen(/usr/local/lib/lua/5.3/limlib2.so, 6): Symbol not found: _luaL_checkint Referenced from: /usr/local/lib/lua/5.3/limlib2.so Expected in: flat namespace in /usr/local/lib/lua/5.3/limlib2.so stack traceback: [C]: in ? [C]: in function 'require' imgpxl.lua:1: in main chunk [C]: in ?

Любая помощь? Я не понимаю, что происходит.

+0

Откуда вы взяли 'limlib2.so'? Похоже, что (в соответствии с комментарием Piglet) было построено для lua 5.2, но вы установили его для использования с lua 5.3. –

ответ

0

limlib2 ссылается _luaL_checkint, который терпит неудачу в Lua 5.3, как _luaL_checkint был заменен _luaL_checkinteger в Lua 5.2

_luaL_checkint является устаревшим. Просто найдите Google _luaL_checkint, чтобы найти множество обходных решений.

заказ это: Cannot make gunplot on osx yosemite. Undefined symbols

imlib2, кажется, не были обновлены в течение 8 лет. Поэтому неудивительно, что вы столкнулись с проблемами

+0

Спасибо! Также просто вопрос, я нахожу, что мне нужны некоторые #define-инструкции, нужно ли мне редактировать это в самом модуле (c-код)? –

+0

есть. проблема в коде c, поэтому вы должны ее исправить. – Piglet

+0

Где код c, который я могу редактировать, все, что у меня есть, это файл библиотеки (.so) –