4

在尝试编译我的 Phoenix 项目的发行版时,出现以下错误:

$ mix release
....
==> Generated .appup for myapp 0.0.1 -> 0.0.2
===> Missing beam file elf_format <<"/usr/lib/erlang/lib/hipe-3.11.2/ebin/elf_format.beam">>
could not find app plug {0,10,0}

$ elixir --version
Elixir 1.0.3

Phoenix 版本是 0.10.0。我做错了什么,还是凤凰城的一个错误?

4

2 回答 2

4

这可以。这是因为您没有启用 hipe 编译器,但您不需要它。一切都应该正常工作™。

于 2015-03-09T09:14:49.603 回答
4

基本上,在我的情况下,它是关于在 ubuntu 中缺少 erlang-base-hipe 包。

请参阅我创建的关于您收到的相同警告的问题 https://github.com/bitwalker/exrm/issues/107

这里的解决方案是 1. 忽略。警告没有害处。虽然我相信 exrm 可以为用户提供更好的信息而不会使他们感到困惑。2. 安装 erlang-base-hipe 包来解决这个问题。

如果您访问https://www.erlang-solutions.com/downloads/download-erlang-otp 并查看 ubuntu 选项卡,您会发现此信息是最后一个常见问题解答。

  1. 我听说过 HiPE。它是什么?如何得到它?

HiPE 代表高性能 Erlang 项目。它是 Erlang 的本机代码编译器。在大多数情况下,它会对性能产生积极影响。如果要下载它,请调用以下命令:

sudo apt-get install erlang-base-hipe 这将用 HiPE 支持的版本替换 Erlang/OTP 运行时。其他 Erlang 应用程序不需要重新安装。要返回标准运行时,请调用:

sudo apt-get install erlang-base

于 2015-03-09T12:20:05.457 回答