【发布时间】:2013-10-27 21:35:40
【问题描述】:
我们希望在我们的产品中包含 RabbitMQ,这进一步需要 Erlang OTP。我们不希望我们的客户在安装我们的产品之前安装 Erlang,并希望找到将 Erlang 包含在我们自己的产品安装程序中的方法。
有哪些策略可以做到这一点?我们希望支持 Windows 和 Linux。目前我的理解是 Windows 上没有 Erlang 的 ZIP 版本。所以这就是我的想法
- 包含 Erlang OTP 安装程序并在我们的产品安装程序运行时启动它
- 安装 Erlang OTP,压缩安装目录并让我们的产品安装程序将其解压缩到客户的机器上
- 。 . . ?
感谢您的建议。
于 10 月 21 日编辑
我想通了。当 erl.exe 启动时,它会为分布式 erlang 启动一个名称解析器守护进程 (epmd.exe)。此 exe 的位置硬编码在 /otp/install/path/bin/erl.ini 中。
将 otp 安装从 C:\Program Files 复制到我选择的目录后,我必须更新 erl.ini 文件以反映 empd 进程路径的更改。之后,我从 c:\Program Files 卸载了 OTP,并能够从复制它的目录启动 erlang。
兰吉特
【问题讨论】:
-
我认为应用程序wings3d是按照您正在寻找的方式制作的(它不使用OTP,但是从头开始安装),您可以在这里查看源代码:link
-
我安装了wings32,发现安装程序只是简单地提取了erl.exe和一堆编译好的erlang程序。我将安装 erlang otp 并观察它是否/写入了哪些注册表项。
标签: erlang installation rabbitmq