2011-03-31 78 views
4

我剛剛使用apt-get將Erlang下載到Ubuntu 10.10。我如何運行Erlang附帶的示例(可通過apt-get install erlang-examples獲得的示例)。我試着去的目錄他們存儲在何處,編制ball.erl,但我得到這個錯誤:如何使用erlang實例

ball.bea#: error writing file 
error 

回答

12

其中存儲這些例子目錄不是普通用戶可寫。要編譯.erl文件,編譯器需要能夠寫出已編譯的.beam文件。解決此

一種方法是將文件複製到一個目錄,你可以並編譯它們有:

$ mkdir erlex 
$ cd erlex 
$ cp /usr/lib/erlang/lib/gs-1.5.11/examples/src/* . 
$ erlc *.erl 

您需要erlang-dev包安裝了該工作。

你可以像這樣運行ball例如:

$ erl -s ball 

ball這裏是模塊的名稱,Erlang的仿真器默認調用該模塊,它是在這種情況下,正確的start/0功能。

但是,您實際上不必編譯這些示例。 Ubuntu的erlang-examples包附帶他們已經編譯:

$ cd /usr/lib/erlang/lib/gs-1.5.11/examples/ebin 
$ erl -s ball 

關閉在每個GUI窗口後,說q().走出模擬器。這對你來說可能看起來很奇怪,除非你意識到Erlang的所有設計都考慮了很長的正常運行時間。模擬器運行的最後一個進程停止的事實並不足以讓BEAM模擬器自行關閉。畢竟,其他的東西可能會在同一個模擬器中啓動。

+0

太棒了,謝謝! – TheDude 2011-03-31 13:59:39