New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mix deps.compile fails on Windows #1203

Closed
ToJans opened this Issue Jun 6, 2013 · 10 comments

Comments

Projects
None yet
3 participants
@ToJans
Contributor

ToJans commented Jun 6, 2013

After I cloned the dynamo-repo, I tried to compile everthing, but it fails on windows; this is the output:

 C:\dev\MELF\elixir\dynamo>mix deps.compile
 * Compiling mimetypes
 ** (Mix) could not find executable c:/dev/MELF/elixir/dynamo/deps/mimetypes/rebar to compile dependency mimetypes, please ensure c:/dev/MELF/elixir/dynamo/deps/mimetypes/rebar is available

I think this has to do with the fact that on windows the "rebar" file is not executable; we have to invoke rebar.cmd instead.

@josevalim

This comment has been minimized.

Show comment
Hide comment
@josevalim

josevalim Jun 6, 2013

Member

@ToJans which Elixir version are you running?

Member

josevalim commented Jun 6, 2013

@ToJans which Elixir version are you running?

@ToJans

This comment has been minimized.

Show comment
Hide comment
@ToJans

ToJans Jun 6, 2013

Contributor
 C:\dev\MELF\elixir\dynamo>iex -v
 Elixir 0.9.0
 Interactive Elixir (0.9.0) - press Ctrl+C to exit (type h() ENTER for help)
 iex(1)> Batchopdracht beëindigen (J/N)?
 ^C

FYI rebar.cmd (which is used on windows) is in my path, this is the version

 C:\dev\MELF\elixir\dynamo>rebar -V
 rebar version: 2 date: 20120417_234834 vcs: git afffb48

So some kind of a fallback on windows where rebar is called without a path would be perfect for me....

Contributor

ToJans commented Jun 6, 2013

 C:\dev\MELF\elixir\dynamo>iex -v
 Elixir 0.9.0
 Interactive Elixir (0.9.0) - press Ctrl+C to exit (type h() ENTER for help)
 iex(1)> Batchopdracht beëindigen (J/N)?
 ^C

FYI rebar.cmd (which is used on windows) is in my path, this is the version

 C:\dev\MELF\elixir\dynamo>rebar -V
 rebar version: 2 date: 20120417_234834 vcs: git afffb48

So some kind of a fallback on windows where rebar is called without a path would be perfect for me....

@ToJans

This comment has been minimized.

Show comment
Hide comment
@ToJans

ToJans Jun 6, 2013

Contributor

Upgraded elixir, still the same; FYI:

C:\dev\MELF\elixir\dynamo>iex -v
Elixir 0.9.1
Interactive Elixir (0.9.1) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> Batchopdracht beëindigen (J/N)? j

C:\dev\MELF\elixir\dynamo>mix deps.compile
* Compiling mimetypes
** (Mix) could not find executable c:/dev/MELF/elixir/dynamo/deps/mimetypes/rebar to compile dependency mimetypes, please ensure c:/
dev/MELF/elixir/dynamo/deps/mimetypes/rebar is available

C:\dev\MELF\elixir\dynamo>erl -v
Eshell V5.10.1  (abort with ^G)
1>
Contributor

ToJans commented Jun 6, 2013

Upgraded elixir, still the same; FYI:

C:\dev\MELF\elixir\dynamo>iex -v
Elixir 0.9.1
Interactive Elixir (0.9.1) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> Batchopdracht beëindigen (J/N)? j

C:\dev\MELF\elixir\dynamo>mix deps.compile
* Compiling mimetypes
** (Mix) could not find executable c:/dev/MELF/elixir/dynamo/deps/mimetypes/rebar to compile dependency mimetypes, please ensure c:/
dev/MELF/elixir/dynamo/deps/mimetypes/rebar is available

C:\dev\MELF\elixir\dynamo>erl -v
Eshell V5.10.1  (abort with ^G)
1>
@josevalim

This comment has been minimized.

Show comment
Hide comment
@josevalim

josevalim Jun 7, 2013

Member

@ToJans I have pushed a new precompiled package with master that theoretically solves this issue, could you give it a try?

Member

josevalim commented Jun 7, 2013

@ToJans I have pushed a new precompiled package with master that theoretically solves this issue, could you give it a try?

@ToJans

This comment has been minimized.

Show comment
Hide comment
@ToJans

ToJans Jun 7, 2013

Contributor

@josevalim thanks for the quick fix!
Installed & it compiles the mimetypes library perfectly.

It fails on ranch, but that is probably because I do not have "make" in my path. I will try to fix this and get back to you...

C:\dev\MELF\elixir\dynamo>mix deps.get
All dependencies up to date

C:\dev\MELF\elixir\dynamo>mix deps.compile
* Compiling mimetypes
==> mimetypes (compile)
Compiled src/mimetypes_scan.xrl
Compiled src/mimetypes_parse.yrl
Compiled src/mimetypes_app.erl
Compiled src/mimetypes_loader.erl
Compiled src/mimetypes.erl
Compiled src/mimetypes_sup.erl
Compiled src/mimetypes_parse.erl
Compiled src/mimetypes_scan.erl
* Compiling ranch
make wordt niet herkend als een interne
of externe opdracht, programma of batchbestand.
** (Mix) could not compile dependency ranch, make command failed. In case you want to recompile this dependency, please run: mix deps.compile ranch
Contributor

ToJans commented Jun 7, 2013

@josevalim thanks for the quick fix!
Installed & it compiles the mimetypes library perfectly.

It fails on ranch, but that is probably because I do not have "make" in my path. I will try to fix this and get back to you...

C:\dev\MELF\elixir\dynamo>mix deps.get
All dependencies up to date

C:\dev\MELF\elixir\dynamo>mix deps.compile
* Compiling mimetypes
==> mimetypes (compile)
Compiled src/mimetypes_scan.xrl
Compiled src/mimetypes_parse.yrl
Compiled src/mimetypes_app.erl
Compiled src/mimetypes_loader.erl
Compiled src/mimetypes.erl
Compiled src/mimetypes_sup.erl
Compiled src/mimetypes_parse.erl
Compiled src/mimetypes_scan.erl
* Compiling ranch
make wordt niet herkend als een interne
of externe opdracht, programma of batchbestand.
** (Mix) could not compile dependency ranch, make command failed. In case you want to recompile this dependency, please run: mix deps.compile ranch
@josevalim

This comment has been minimized.

Show comment
Hide comment
@josevalim

josevalim Jun 7, 2013

Member

Great! If we can compile mimetypes, mission accomplished. :) Now, getting make to work on windows is another story... if you find out a way, pls let us know!

Member

josevalim commented Jun 7, 2013

Great! If we can compile mimetypes, mission accomplished. :) Now, getting make to work on windows is another story... if you find out a way, pls let us know!

@josevalim josevalim closed this Jun 7, 2013

@ToJans

This comment has been minimized.

Show comment
Hide comment
@ToJans

ToJans Jun 7, 2013

Contributor

@josevalim I got it working with MinGW minimal system; I keep getting compilation errors, but it seems to work:
image

Contributor

ToJans commented Jun 7, 2013

@josevalim I got it working with MinGW minimal system; I keep getting compilation errors, but it seems to work:
image

@ToJans

This comment has been minimized.

Show comment
Hide comment
@ToJans

ToJans Jun 13, 2013

Contributor

FYI I have written a small blog post a few days ago on how to get started with Elixir/dynamo on Windows.

Contributor

ToJans commented Jun 13, 2013

FYI I have written a small blog post a few days ago on how to get started with Elixir/dynamo on Windows.

@AlbertMoscow

This comment has been minimized.

Show comment
Hide comment
@AlbertMoscow

AlbertMoscow Jul 1, 2013

Contributor

I also can't mix deps.compile for dynamo on Windows. Elixir version is 0.9.4-dev. And I have rebar 2.1.0 installed.

my1

Contributor

AlbertMoscow commented Jul 1, 2013

I also can't mix deps.compile for dynamo on Windows. Elixir version is 0.9.4-dev. And I have rebar 2.1.0 installed.

my1

@josevalim

This comment has been minimized.

Show comment
Hide comment
@josevalim

josevalim Jul 1, 2013

Member

It is a bug on the mimetypes lib that is choking on a \r, so it can't parse the mimetypes file. We should fix it on the mimetypes lib by improving the parser or not allowing CRLF changes when checking out on windows :) /cc @yrashk

Member

josevalim commented Jul 1, 2013

It is a bug on the mimetypes lib that is choking on a \r, so it can't parse the mimetypes file. We should fix it on the mimetypes lib by improving the parser or not allowing CRLF changes when checking out on windows :) /cc @yrashk

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment