Haxe скомпилированный код не запускается
У меня проблемы с получением исполняемых файлов, скомпилированных из исходного кода Haxe, для работы на компьютерах, на которых не установлен Haxe. Впервые проблема возникла с простой сетевой программой, но, похоже, она подходит для любой программы. Даже что-то вроде
class Test
{
static function main()
{
trace("test");
}
}
составлен в exe с haxe -main Test.hx -neko Test.n
а также nekotools boot Test.n
будет работать на моем компьютере, но на любом другом дает neko.dll is missing from your computer
ошибка. Я получаю аналогичную ошибку, если скомпилирую исходный код haxe в C++ или C# и запускаю сгенерированный exe.
Я не уверен, что такое neko.dll, но я не понимаю, как это должно быть необходимо для запуска EXE. Я чувствую, что у меня должно быть какое-то базовое заблуждение! Это намеренное поведение? Как я могу скомпилировать код Haxe, чтобы он работал на любом компьютере с Windows без установки Neko?
1 ответ
Обычно neko.dll находится по адресу C: \ HaxeToolkit \ neko. Вы можете просто скопировать и вставить это рядом с exe.
Как правило, при распространении exe, вы также должны распространять необходимые библиотеки. Вы можете проверить зависимость DLL с помощью различных инструментов. Например, используя Dependency Walker, откройте exe-файл, и он выведет список библиотек. Щелкните правой кнопкой мыши пункт dll в его меню и выберите свойства, там вы найдете, где он находится.