2014年1月23日

Erlang 在 Mac OS X 的安裝

在 Mac OS X的作業系統裡安裝 erlang 的開發環境有幾種方式
第一種使用 Macports 方法安裝,在Mac OS console 下,打入以下指令
sudo port install erlang
第二種則是使用 Homebrew 的安裝,同樣在 console 下輸入指令
brew install erlang
以上兩種方法都可以安裝好 erlang 環境,但是會有個問題是在於安裝好後,當要使用 observer 這種 GUI tools 時會無法使用,原因在於因為以上兩種安裝方式並沒有幫你安裝 wxWidgets 套件,那麼如何確認你的 Mac OS X 是否能使用?

先進入 erlang shell 後,請啟動 observer,如果出現 exception 那麼你就得先把目前的 erlang 環境移除掉之後,再用以下方式來安裝 erlang 環境
$ erl
Erlang R16B (erts-5.10.1) [source] [64-bit] [smp:2:2]   [async-threads:10] [kernel-poll:false]

Eshell V5.10.1 (abort with ^G)
1> observer:start().
exception error: undefined function wx_object:start/3 
in function observer_wx:start/0 (observer_wx.erl, line 66)
先使用 Macports 安裝 wxWidgets 套件
sudo port install wxWidgets-3.0
然後再到 erlang 官方網站抓取目前最新版本的 source 回來,並解壓縮,如果你的Mac OS是設定 64bit 環境的話,記得下載 64bit source版。
下載網址:All versions for Mac OS X
解壓縮source後,我們開始手動編譯,先來 configure,用LLVM 來 compile,記得要加上 wxgtk參數讓它能去 link library
CFLAGS=-O0 ./configure --disable-hipe --enable-smp-support --enable-threads  --enable-kernel-poll --enable-darwin-64bit --with-ssl --with-wxgtk
configure成功之後,接著就是進行 make 與 make insatll
make;sudo make install
要如何驗證你是否已經成功安裝好在 erlang 環境裡使用 wxWidgets,請按照文章前面的方式啟用 observer ,如果你可以看到GUI tool 出現在你的螢幕畫面上,恭喜你,你已經完成基本的安裝設定了!