Можно ли использовать байт-код, созданный luac, на компьютерах без библиотеки Lua?

Если я соберу регулярный .lua файл с luac, можно ли запустить результат без установленной библиотеки Lua или интерпретатора?

2 ответа

Нет. Вы можете запустить его на версии Lua, созданной без компилятора, но вам все еще нужен интерпретатор Lua для выполнения кода.

Кстати, скомпилированный байт-код Lua также зависит от компьютера; то есть вы не можете скомпилировать на одной архитектуре, а затем запустить этот вывод на другой архитектуре, если вы не понимаете тонкостей (порядковый номер, размеры типов и т. д.).

Если ваш код не использует каких-либо средств динамической загрузки (например, loadstring, loadfile, require и т. Д.), Вы можете разделить библиотеку Lua до виртуальной машины, потому что компилятор выдает код для запуска на этой виртуальной машине. Это может легко сократить Lua уже небольшой след до 1/3 фракции оригинала.

Однако, поскольку это НЕ нативный двоичный код для какой-либо существующей в настоящее время архитектуры, вы все равно НЕ МОЖЕТЕ запустить его напрямую без помощи ВМ.

Другие вопросы по тегам