2015-09-25 107 views
4

我正在通過Dave Thomas編寫「Elixir」程序。我現在達到了創建第一個混音項目的地步。 HTTPoison剛剛推出並添加到mix.exs中的應用程序功能中。現在該項目應該首次使用iex -S mix進行編譯。那時我遇到了ssl_verify_hostname的問題。安裝erlang-srcerlang-dev後,我現在堅持了雖然從來就搜索到了這個輸出我無法找到任何有用的信息的不同部位以下控制檯輸出無法編譯簡單的Elixir項目

$ iex -S mix 
Erlang/OTP 18 [erts-7.1] [source] [64-bit] [smp:8:8] [async-threads:10] [kernel-poll:false] 

WARN: Expected /home/..../issues/deps/idna to be an app dir (containing ebin/*.app), but no .app found. 
WARN: Expected /home/..../issues/deps/ssl_verify_hostname to be an app dir (containing ebin/*.app), but no .app found. 
==> hackney (compile) 
WARN: Expected /home/..../issues/deps/idna to be an app dir (containing ebin/*.app), but no .app found. 
WARN: Expected /home/..../issues/deps/ssl_verify_hostname to be an app dir (containing ebin/*.app), but no .app found. 
Dependency not available: idna-.* ({git, 
             "https://github.com/benoitc/erlang-idna", 
             {tag,"1.0.2"}}) 
Dependency not available: ssl_verify_hostname-.* ({git, 
                "https://github.com/deadtrickster/ssl_verify_hostname.erl", 
                {tag,"1.0.5"}}) 
** (ArgumentError) argument error 
    (stdlib) :io.put_chars(#PID<0.26.0>, :unicode, <<69, 82, 82, 79, 82, 58, 32, 99, 111, 109, 112, 105, 108, 101, 32, 102, 97, 105, 108, 101, 100, 32, 119, 104, 105, 108, 101, 32, 112, 114, 111, 99, 101, 115, 115, 105, 110, 103, 32, 47, 104, 111, 109, 101, 47, 114, 107, 114, 97, 117, ...>>) 
    (mix) lib/mix/shell.ex:78: Mix.Shell.do_cmd/2 
    (mix) lib/mix/tasks/deps.compile.ex:161: anonymous fn/5 in Mix.Tasks.Deps.Compile.do_command/4 
    (mix) lib/mix/project.ex:196: Mix.Project.in_project/4 
    (elixir) lib/file.ex:1061: File.cd!/2 
    (mix) lib/mix/dep.ex:137: Mix.Dep.in_dependency/3 
    (mix) lib/mix/tasks/deps.compile.ex:160: Mix.Tasks.Deps.Compile.do_command/4 
    (mix) lib/mix/tasks/deps.compile.ex:59: anonymous fn/3 in Mix.Tasks.Deps.Compile.compile/1 

+1

哪個藥劑版本您使用的?你能把項目上傳到Github嗎?我們來看看?真的很奇怪,正在發生。 –

+2

其實。恐怕你有一個'rebar'問題(鋼筋是一個Erlang構建工具)。確保你卸載了你可用的任何「鋼筋」(檢查「哪個鋼筋」),然後再試一次。 –

+0

@JoséValim:Elixir版本是1.0.5。我推動了這個項目(https://github.com/bloodyroot/elixirbook_issues)。未安裝「鋼筋」。這可能是問題嗎? –

回答

0

您必須在運行代碼之前安裝所有依賴項。

混合deps.get(它依賴的下載)

混合DEPS(它安裝依賴)

+1

不幸的是,這並不適合我。事實上,就像Jose Valim所說的那樣,它確實似乎是一個「螺紋鋼」問題。但直到現在我還不知道如何擺脫它。與此同時,我正在運行一個VirtualBox映像,在那裏我可以使用混合。 –