Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
分发需要哪些Luadist文件_Lua_Iup - Fatal编程技术网

分发需要哪些Luadist文件

分发需要哪些Luadist文件,lua,iup,Lua,Iup,我安装了Luadist并创建了一个小程序(名为abcd.lua,它也使用IUP GUI)。它与命令iuplua.exe abcd.lua运行良好我想把它交给其他人试试。由于Lua可能没有安装在他们的计算机上,我想把它和Luadist文件夹一起交给他们。我看到Luadist文件夹中有大量文件(确切地说是1148个文件,在这里尝试列出它们,但超过了字符数)。它们位于以下文件夹中: bin : has large number of exe and dll files. include: has la

我安装了Luadist并创建了一个小程序(名为abcd.lua,它也使用IUP GUI)。它与命令iuplua.exe abcd.lua运行良好我想把它交给其他人试试。由于Lua可能没有安装在他们的计算机上,我想把它和Luadist文件夹一起交给他们。我看到Luadist文件夹中有大量文件(确切地说是1148个文件,在这里尝试列出它们,但超过了字符数)。它们位于以下文件夹中:

bin : has large number of exe and dll files.
include: has lauxlib.h  luaconf.h  lua.h  lua.hpp  lualib.h
lib: has liblua.dll.a and its extracted folder and a lua folder with large number of subfolders and files
share: also has large number of folders and files.
tmp: only empty cache folder currently
以下文件的名称中包含“iup”:

./share/luadist-git/dists/iup-3.6
./share/luadist-git/dists/iup-3.6/dist.info
./share/iup
./share/iup/README
./share/iup/COPYRIGHT
./lib/lua/iupluaimglib.dll
./lib/lua/iuplua.dll
./lib/lua/iuplua_mglplot.dll
./lib/lua/iupluacd.dll
./lib/lua/iupluacontrols.dll
./lib/lua/iupluagl.dll
./lib/lua/iuplua_pplot.dll
./lib/lua/iupluatuio.dll
./lib/lua/iupluaim.dll
./bin/libiuptuio.dll
./bin/libiup_pplot.dll
./bin/iuplua.exe
./bin/iupview.exe
./bin/libiup.dll
./bin/libiupgl.dll
./bin/libiupcd.dll
./bin/libiupim.dll
./bin/libiupimglib.dll
./bin/libiup_mglplot.dll
./bin/libiuplua.dll
./bin/libiupcontrols.dll
只提供这些文件和我的程序文件(abcd.lua)就足够了吗,尽管我认为还需要很多dll文件


我可以选择提供哪些文件或文件夹,或者我需要提供所有文件才能正常运行我的程序?谢谢您的帮助。

您有两个选择:

(1) 将可执行文件移动到其他文件夹并启动脚本。它将失败,并显示有关缺少DLL的错误消息;将DLL移动到包含可执行文件的文件夹中,然后重复。假设执行将遵循加载外部模块的所有代码路径,这将为您提供一个依赖项列表

(2) 使用查找可执行文件及其DLL具有的所有依赖项。这种方法的优点是,您可以在不移动任何文件的情况下执行它,它将为您提供对依赖关系的详细分析,以及如何在您的系统上解析依赖关系


请记住,您不需要保留LuaDist用于动态库的相同结构;您可以将脚本所需的所有DLL放在可执行文件旁边(这可能是最简单、最成功的配置)。

在IUP文档中,每个库都描述了其依赖关系。你可以从那里开始


但答案取决于您使用的模块。如果您所做的唯一“要求”是“iup”,那么它相当简单。您将需要可执行文件、Lua DLL、IUP DLL和IUPLUA DLL。

依赖项查看器通过查看可执行文件或DLL中的链接依赖项来工作。由于Lua将动态加载模块,因此它将无法工作。除非您手动打开每个模块DLL以查看其依赖项。依赖项Walker将工作,因为它包括跟踪脚本加载的所有内容(包括动态加载的所有内容)的分析功能。哈哈,好的。当你“开始分析”是的。我想我还需要iuplua.exe。我需要包含lua.exe或任何其他exe吗?这就是我的意思,你需要一个可执行文件。它可以是iuplua.exe或lua.exe。从命令行运行lua文件时,两者的工作原理相同。在没有参数的情况下运行时,它们非常不同。