windows - 如何编写跨平台安装程序脚本?

标签 windows linux installation cross-platform

不是为 Windows 和 Linux 下载不同的程序,是否有可能使下载成为一个跨平台脚本/可执行文件,可以从 FTP 服务器下载正确的安装程序并启动它?我应该用什么语言写?我唯一能想到的就是 Java,但我不想花时间去学习它。我不能用 Python 或 BASH 编写它,因为大多数 Windows 机器都没有安装这些。我应该怎么做?

最佳答案

跨平台可执行文件(如 exe 或 a.out 或 ELF)是不可能的。当涉及 Windows 时,可执行文件永远不会跨平台。为此必须引入脚本语言(或 JIT 编译)。我们陷入了先有鸡还是先有蛋的悖论。您可能必须检测下载器正在使用的操作系统,在您的网站页面中使用 Javascript 脚本并决定下一步要做什么等...

虽然不完全是您要查找的内容,但以下是一些提示。

我所知道的用于多平台安装程序的最佳工具是 Flexera Software's InstallAnywhere .那可能有点贵。对于免费选项,我会研究以下选项:

语言

PYTHON(但根据您的帖子,这是不可能的,但请查看我的帖子末尾以了解更多 Python 选项)

虽然使用上述任何一种语言编写安装程序可能意味着更多的工作,但它们为您提供了无与伦比的灵 active 和完全的控制。

Perl 要求您在 Windows 上安装 Perl 解释器和模块。但这对你来说似乎也不成问题。因此,您可以通过以下方式避免头痛:

PAR

pp

对于 Python,通过:

py2exe

pyinstaller

关于windows - 如何编写跨平台安装程序脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10987419/

相关文章:

windows - powershell 5 类是否有访问修饰符?

linux - 从 AWK 命令获取输出并根据空格逐行显示

OpenCV Ubuntu 安装问题

python - 在 CentOS 上安装 psycopg2 时遇到问题

c++ - 如何使用 C++ 复制目录

c++ - Create Memory Device Context... 用于位图,而不是设备(不显示)

java - 有没有运行良好的 Java COM 库?

找不到 linux/modversions.h

c++ - 在不附加 GDB 的情况下获取所有线程的堆栈跟踪

installation - 在ubuntu上安装iperf的问题