首先給大家分享一個笑話, 這是程式員專用笑話, 祝各位開心!
英語說明很簡單, 就是叫你如何畫一個貓頭鷹, 分為兩個步驟:
- 第一步: 畫一些圓
- 第二部: 畫剩餘的部分
安裝
安裝過程非常簡單, 兩行指令即可, 最好能把
kerl
添加到
PATH
環境變量中.
下載下傳
curl -O https://raw.githubusercontent.com/yrashk/kerl/master/kerl
修改執行權限
chmod a+x kerl
使用
顯示所有的釋出版本
kerl list releases
建構指定的版本
kerl build 18.3 18.3_default
KERL_CONFIGURE_OPTIONS=--enable-hipe kerl build 18.3 18.3_hipe
作為一個試驗性功能, 還可以從git倉庫建構
kerl build git https://github.com/erlang/otp.git master 20160411
顯示已建構版本
➜ kerl list builds
17.4,17.4
18.3,18.3
18.3,18.3_hipe
顯示的結果由
,
号分隔, 第一列為
kerl list releases
指令中列出的版本号, 第二列為建構名稱, 該建構名字可以被後續的
kerl install
指令使用.
顯示已經安裝的版本
➜ kerl list installations
17.4 /Users/tmp
18.3_hipe /Users/tmp
激活特定的版本
. /Users/tmp/activate
恢複到預設版本, 下面做個測試, 顯示 erl
的版本
erl
➜ erl -version
Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 7.1
➜ . /Users/tmp/activate
➜ erl -version
Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 7.3
➜ kerl_deactivate
➜ erl -version
Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 7.1
顯示目前已經激活的Erlang版本: kerl active
kerl active
➜ kerl active
No Erlang/OTP kerl installation is currently active
➜ . /Users/tmp/activate
➜ erlang-history git:(master) kerl active
The current active installation is:
/Users/tmp
顯示狀态: kerl status
kerl status
➜ kerl status
Available builds:
17.4,17.4
18.3,18.3
18.3,18.3_hipe
----------
Available installations:
17.4 /Users/tmp
18.3_hipe /Users/tmp
----------
The current active installation is:
/Users/tmp
删除特定的建構
上面
17.4
版本已經不是最新的版本, 為了節約磁盤空間, 把它删除
➜ kerl delete build 17.4
The 17.4 build has been deleted
➜ kerl status
Available builds:
18.3,18.3
18.3,18.3_hipe
----------
Available installations:
17.4 /Users/tmp
18.3_hipe /Users/tmp
----------
The current active installation is:
/Users/tmp
配置
你可以在指令行中執行建構的配置選項, 也可以在配置檔案中進行配置
配置編譯選項
指令行通過編譯參數指定, 如:
KERL_CONFIGURE_OPTIONS=--enable-hipe kerl build 18.3 18.3_hipe
配置檔案在
$HOME/.kerlrc
指定
# $HOME/.kerlrc
KERL_CONFIGURE_OPTIONS="\
--disable-debug \
--without-javac \
--enable-shared-zlib \
--enable-dynamic-ssl-lib \
--enable-hipe \
--enable-smp-support \
--enable-threads \
--enable-kernel-poll \
--with-wx"
配置應用程式
建構一個最小的Erlang環境, 隻包含
kernel
,
stdlib
,
sasl
三個應用程式
KERL_CONFIGURE_APPLICATIONS="kernel stdlib sasl" kerl build 18.3 18.3_minimal
禁用應用程式
在建構的Erlang環境中排除ODBC應用
KERL_CONFIGURE_DISABLE_APPLICATIONS="odbc" kerl build 18.3 18.3_no_odbc
安裝Erlang
安裝到指定的目錄, 為了能夠安裝多個版本, 安裝目錄應該使用版本号進行辨別
kerl install <build_name> <path>
例如
kerl install 18.3_hipe /tmp/erlang/18.3_hipe
部署
把指定Erlang建構版本部署到遠端伺服器上, 這樣在一個叢集中, 我們可以在一個伺服器上編譯, 統一部署所有的叢集節點的 Erlang 運作環境.
kerl deploy <[[email protected]]host> [directory] [remote_directory]
kerl deploy [email protected] /deploy/erlang/18.3_hipe
注意:
要配置公鑰能讓
ssh
直接無密碼登陸遠端伺服器
把公鑰添加到遠端伺服器的
$HOME/.ssh/authorized_key
檔案中即可
本地預設公鑰位置為
$HOME/.ssh/id_rsa.pub
修訂
-
增加從2016-04-11
倉庫直接建構git
-
安裝的時候安裝路徑應該是一個單獨的目錄, 最好按建構名稱命名例如2016-07-29
, 不要把不同的建構安裝到一個目錄中, 否則無法用kerl install 19.0_default ~/.kerl/installs/19.0_default
删除指定的建構kerl delete