При попытке скомпилировать релиз моего проекта 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
ijt 9 Мар 2015 в 08:57

2 ответа

Лучший ответ

Это хорошо. Это потому, что у вас не включен компилятор hipe, но он вам не нужен. Все должно работать нормально ™.

4
José Valim 9 Мар 2015 в 09:14

По сути, в моем случае речь идет об отсутствии пакета erlang-base-hipe в ubuntu.

См. Созданную мной проблему с тем же предупреждением, которое вы получаете https://github.com/bitwalker/exrm/issues/107

Решение здесь 1. Просто игнорируйте. В предупреждении нет ничего плохого. Хотя я считаю, что exrm может создавать более качественные сообщения для пользователей и не сбивать их с толку. 2. Установите пакет erlang-base-hipe, который решит проблему.

Если вы перейдете на https://www.erlang-solutions.com/downloads/download -erlang-otp и посмотрите вкладку ubuntu, вы найдете эту информацию как последний FAQ.

  1. Я слышал о HoPE. Что это? Как получить его?

HiPE означает высокопроизводительный проект на Erlang. Это компилятор нативного кода для Erlang. В большинстве случаев это положительно сказывается на производительности. Если вы хотите его скачать, позвоните по телефону:

sudo apt-get install erlang-base-hipe Это заменит среду выполнения Erlang / OTP версией, поддерживаемой HiPE. Другие приложения Erlang не нужно переустанавливать. Чтобы вернуться в стандартную среду выполнения, позвоните:

sudo apt-get install erlang-base

4
shankardevy 9 Мар 2015 в 12:20