2017-08-18 102 views
1

我在本地機器上安裝了erlang 19。在OSX上安裝elixir 1.5問題

$ erl -s 
>> Erlang/OTP 19 [erts-8.3] [source-d5c06c6] [64-bit] [smp:8:8] [async-threads:10] [kernel-poll:false] 

我安裝仙丹與自制

$ brew install elixir 
==> Downloading https://homebrew.bintray.com/bottles/elixir-1.5.1.sierra.bo 
Already downloaded: /Users/mkaravan/Library/Caches/Homebrew/elixir-1.5.1.sierra.bottle.tar.gz 
    ==> Pouring elixir-1.5.1.sierra.bottle.tar.gz 
    /usr/local/Cellar/elixir/1.5.1: 400 files, 5MB 

我得到一個錯誤檢查靈藥版本時:

$ elixir -v 
{"init terminating in do_boot",{undef,[{elixir,start_cli,[],[]},{init,start_em,1,[]},{init,do_boot,3,[]}]}} 
init terminating in do_boot() 

Crash dump is being written to: erl_crash.dump...done 

如何安裝靈藥1.5嗎?

編輯:我不記得我是如何安裝Erlang的。我試圖用自制與此錯誤刪除它,但上來:

$ brew uninstall --force erlang 
Uninstalling erlang... (5,211 files, 259.7MB) 
Error: Permission denied - /usr/local/Cellar/erlang/19.3/lib/erlang/lib/ic-4.4.2/java_src/com/ericsson/otp/ic/Any.java 

我已經試過sudo荷蘭國際集團Any.java和chmod荷蘭國際集團,但都無濟於事。

+1

您是如何安裝二郎?使用版本管理器可能是最簡單的。 –

+0

@JustinWood見上面編輯 –

+1

你有沒有試過'''釀造博士'''? – Pfitz

回答

2

您需要查看erl_crash.dump以瞭解更多信息。

這很可能是因爲您用來編譯elixir二進制文件的Erlang版本與您安裝的版本不同。 看來你的系統中有兩個erlang版本。

最好的行動方式是刪除所有版本的Elixir和Erlang。

版本管理建議對Erlang和靈藥:

ASDF

https://github.com/asdf-vm/asdf

ASDF設置:

git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.3.0 

# OR for Mac OSX and default shell 
echo -e '\n. $HOME/.asdf/asdf.sh' >> ~/.bash_profile 
echo -e '\n. $HOME/.asdf/completions/asdf.bash' >> ~/.bash_profile 

添加Erlang和藥劑作爲航空自衛隊插件

asdf plugin-add erlang 
asdf plugin-add elixir 

安裝Erlang和藥劑

asdf install erlang 20.0 
asdf install elixir 1.5.1 

一套Erlang和藥劑的全球版本

asdf global erlang 20.0 
asdf global elixir 1.5.1 
+0

事實證明,我的問題很大一部分是我沒有安裝JDK。但是,這非常有幫助,肯定會繼續使用它。 –