Error in installing coherence

C:\Users<<<<>>>\elixir\chattest>mix coherence.install - full-invitable
===> Compiling mimerl
===> Compiling metrics
===> Compiling unicode_util_compat
===> Package unicode_util_compat-0.2.0 not found. Fetching registry updates and trying again…
===> Updating package registry…
===> Writing registry to c:/Users/<<<<>>>/.cache/rebar3/hex/default/registry
===> Generating package index…
===> Writing index to c:/Users/<<<<>>>/.cache/rebar3/hex/default/packages.idx
===> Compiling idna
warning: module attribute @shortdoc was set but never used
c:/Users/<<<<>>>/elixir/chattest/deps/comeonin/mix.exs:2

‘nmake’ is not recognized as an internal or external command,
operable program or batch file.
==> comeonin
could not compile dependency :comeonin, “mix compile” failed. You can recompile this dependency with “mix deps.compile comeonin”, update it with “mix deps.update comeonin” or clean it with “mix deps.clean comeonin”
==> chattest
** (Mix) Could not compile Comeonin.

Please make sure that you are using Erlang / OTP version 18.0 or later
and that you have a C compiler installed.

Please follow the directions below for the operating system you are
using:

Mac OS X: You need to have gcc and make installed. Try running the
commands gcc --version and / or make --version. If these programs
are not installed, you will be prompted to install them.

Linux: You need to have gcc and make installed. If you are using
Ubuntu or any other Debian-based system, install the packages
build-essential. Also install erlang-dev package if not
included in your Erlang/OTP version.

See https://github.com/riverrun/comeonin/wiki/Requirements for more
information.

C:\Users<<<<>>>\elixir\chattest>elixir -v
Erlang/OTP 19 [erts-8.0] [64-bit] [smp:4:4] [async-threads:10]

Elixir 1.4.2

Hi, I am new to elixir and phoenix,
and now have a problem when i try to Install Coherence,
it shows the error above.
Any idea how to solve this?

Did you look at https://github.com/riverrun/comeonin/wiki/Requirements like it says to in the error message?

Windows is a known source of problem when something needs to be natively compiled. Please follow the section about Windows carefully in https://github.com/riverrun/comeonin/wiki/Requirements#windows.

It might be easier to set up a VM running linux and develop inside of it. Not only that it will make life easier with natively compiled packages, also it will avoid other bugs related to phoenix and brunch filewatchers and automatic recompilation which you will probably hit one day or another…

Thanks for your information, I have never realized that the language use a C lib for that…

Its not something of the language elixir but rather a library as every other as well that uses a NIF and therefore needs to native compile it. This library is comeonin and a quasi standard for password hashing and comparing.