проблема компиляции эликсира argon2 при смешивании ecto.create - PullRequest
0 голосов
/ 24 декабря 2018

Я получаю приведенную ниже ошибку при запуске mix ecto.create для создания базы данных postgres.

==> argon2_elixir
could not compile dependency :argon2_elixir, "mix compile" failed. You can recompile this dependency with "mix deps.compile argon2_elixir", update it with "mix deps.update argon2_elixir" or clean it with "mix deps.clean argon2_elixir"
==> snitch_core
** (Mix) "nmake" not found in the path. If you have set the MAKE environment variable,
please make sure it is correct.

Я определяю ее в файле mix.exs в папке apps, как показано ниже:

  # auth
  {:elixir_make, "~> 0.4.2"},
  {:comeonin, "~> 4.1.1"},
  {:argon2_elixir, "~> 1.3.3"},

Попытка перекомпилировать пакет, как указано в сообщении об ошибке, но ничего не помогло.

Благодарим за помощь в этом отношении.

Ответы [ 2 ]

0 голосов
/ 24 декабря 2018

Я смог решить это наконец.Вот общий подход к решению проблемы и ее решению, независимо от ваших конкретных проблем.

Сначала я скопировал nmake.exe из папки visual studio C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.15.26726\bin\Hostx64\x64\ и вставил в папку System32.Запустил команду mix ecto.create и получил измененную сложную ошибку, которая решила проблему.Вот вывод ошибки: ** (Mix) Could not compile with "nmake" (exit status: 2). One option is to install a recent version of [Visual C++ Build Tools](http://landinghub.visualstudio.com/visual-cpp-build-tools) either manually or using [Chocolatey](https://chocolatey.org/) - choco install VisualCppBuildTools`.

После установки инструментов сборки Visual C ++ посмотрите в каталог «Program Files (x86)» и найдите «Microsoft Visual Studio».Запишите полный путь к папке с наибольшим номером версии.Откройте команду «run» и введите следующую команду (убедитесь, что путь и номер версии указаны правильно):

cmd /K "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64

Это должно открыть командную строку с необходимыми установленными переменными среды, и изкоторые вы сможете запускать команды «mix compile», «mix deps.compile» и «mix test».

Следуйте этой строке за строкой, и успех у ваших ног.:)

0 голосов
/ 24 декабря 2018

Похоже, у вас не установлена ​​nmake.Я полагаю, вы работаете в Windows?Установите nmake так или иначе, см. Например этот ответ .

...