Erlang目前已經(jīng)是Fedora和Debian/Ubuntu軟件倉(cāng)庫(kù)中的一部分。
Erlang目前最新的版本是OTP 17.0。Erlang是一種編程語(yǔ)言,用于構(gòu)建大規(guī)模、高可伸縮性、高可用性的軟實(shí)時(shí)系統(tǒng)的編程語(yǔ)言。它已經(jīng)在電信、金融、電子商務(wù)、網(wǎng)絡(luò)電話和即時(shí)消息中得到應(yīng)用。Erlang的運(yùn)行時(shí)系統(tǒng)已經(jīng)內(nèi)建了對(duì)并發(fā)、分布式和容錯(cuò)的支持。
OTP是Erlang庫(kù)和設(shè)計(jì)原則的集合,提供了開(kāi)發(fā)各種系統(tǒng)的中間件。它包含了自己的分布式數(shù)據(jù)庫(kù)、面向其它編程語(yǔ)言的接口、調(diào)試和發(fā)布處理工具等。
BEAM是Erlang代碼執(zhí)行所需的虛擬機(jī)。Erlang代碼編譯后的擴(kuò)展名為.beam。ERTS是Erlang的運(yùn)行時(shí)系統(tǒng),他包括了BEAM、內(nèi)核和標(biāo)準(zhǔn)庫(kù)等組件。
官方推薦從源碼安裝Erlang,因此下面開(kāi)始從源碼安裝OTP 17.0。
下載OTP 17.0源碼:http://www.erlang.org/download/otp_src_17.0.tar.gz
復(fù)制代碼 代碼如下:
# tar zvxf otp_src_17.0.tar.gz
# mv otp_src_17.0/ otp
# cd otp
# ./configure --prefix=/home/erlang --without-javac
報(bào)錯(cuò):
復(fù)制代碼 代碼如下:
configure: error: No curses library functions found
configure: error: /bin/sh '/root/otp/erts/configure' failed for erts
# yum -y install ncurses-devel
# ./configure --prefix=/home/erlang --without-javac
報(bào)錯(cuò)
復(fù)制代碼 代碼如下:
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
crypto : No usable OpenSSL found
jinterface : Java compiler disabled by user
odbc : ODBC library - link check failed
orber : No C++ compiler found
ssh : No usable OpenSSL found
ssl : No usable OpenSSL found
*********************************************************************
# yum list | grep ssl
# yum install openssl-devel
# ./configure --prefix=/home/erlang --without-javac
報(bào)錯(cuò)
復(fù)制代碼 代碼如下:
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
jinterface : Java compiler disabled by user
odbc : ODBC library - link check failed
orber : No C++ compiler found
*********************************************************************
# yum list | grep ODBC
# yum install unixODBC-devel
# ./configure --prefix=/home/erlang --without-javac
報(bào)錯(cuò)
復(fù)制代碼 代碼如下:
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
jinterface : Java compiler disabled by user
orber : No C++ compiler found
*********************************************************************
# yum install gcc-c++
# ./configure --prefix=/home/erlang --without-javac
# make
# make install
安裝完成!
測(cè)試Erlang是否安裝正確
復(fù)制代碼 代碼如下:
# /home/erlang/bin/erl
Erlang/OTP 17 [erts-6.0] [source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V6.0 (abort with ^G)
1> EvenN = lists:filter (fun (N) -> N rem 2 == 0 end, lists:seq(1,100)).
[2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,
44,46,48,50,52,54,56,58|...]
2> halt().
在PATH環(huán)境變量添加Erlang的bin路徑,以便執(zhí)行。
【安裝總結(jié)】
從源碼編譯安裝Erlang,有兩個(gè)庫(kù)或工具是必須的:
一是完整的GCC編譯器環(huán)境
二是Ncurses開(kāi)發(fā)庫(kù)
還有一些庫(kù)或工具,如果沒(méi)有它們,在編譯配置時(shí)會(huì)出現(xiàn)警告信息,而且可能不能通過(guò)配置。這些庫(kù)有:
1)OpenSSL開(kāi)發(fā)庫(kù)
2)ODBC開(kāi)發(fā)庫(kù)
3)Java編譯器
您可能感興趣的文章:- Go/Python/Erlang編程語(yǔ)言對(duì)比分析及示例代碼
- python讀取excel表格生成erlang數(shù)據(jù)
- Erlang實(shí)現(xiàn)的一個(gè)Web服務(wù)器代碼實(shí)例
- Erlang中的Record詳解
- Erlang初學(xué):Erlang的一些特點(diǎn)和個(gè)人理解總結(jié)
- ERLANG和PYTHON互通實(shí)現(xiàn)過(guò)程詳解