Lua .NET Как использовать стандартные и сторонние библиотеки

Я использую Lua внутри приложения C# WinForms для тестирования автоматизации графического интерфейса. Я хочу использовать библиотеку протоколирования http://www.keplerproject.org/lualogging/

Но я не знаю, куда скопировать эти файлы библиотеки протоколирования и другие стандартные файлы lua, чтобы я мог использовать стандартное ведение журнала lua в сценариях lua.

Я вижу что-то вроде LUA_PATH, но все равно не понимаю, как сделать структуру упаковки lua без ее установки.


person Community    schedule 23.03.2010    source источник


Ответы (1)


Вы пытались использовать LuaRocks. Большинство библиотек (включая lualogging) находятся в репозиториях, и их установка проста: luarocks устанавливает lualogging.

Что касается переменных среды, вы должны определить две: LUA_PATH и LUA_CPATH. Если я прав, LUA_PATH — для библиотек Lua (т. е. mylib.lua), а LUA_CPATH — для скомпилированной привязки к собственной библиотеке (например, lsqlite3.so для привязки Sqlite).

Надеюсь это поможет.

person jideel    schedule 01.04.2010
comment
Поддерживает ли LUA_PATH несколько каталогов, например, в Windows я должен указать LUA_PATH=C:\LUA51;C:\MyApp\Lua\Scripts;C:\Myapp\Lua\Lib; Похоже, у LuaInterface есть проблемы с загрузкой lua-библиотек, когда они находятся вне пути. Что-то там надо зацепить - person ; 05.04.2010
comment
Мои переменные среды установлены следующим образом: LUA_PATH=/Users/jideel/.luarocks/share/lua/5.1/?.lua;?.lua LUA_CPATH=/Users/jideel/.luarocks/lib/lua/5.1/?.so ;?.so Таким образом, несколько путей, разделенных символом ; кажется, поддерживается, хотя я не пробовал с Windows. - person jideel; 06.04.2010
comment
;?.lua предназначен для поиска lua-файлов в каталоге, из которого запущено приложение. - person jideel; 06.04.2010
comment
?.lua или ?.so, ?.dylib, ?.dll являются обязательными. Вы не можете просто указать путь в одиночку. - person jideel; 06.04.2010