Cài Đặt Ngôn Ngữ Erlang và Elixir Trên CentOS 7

erlang elixir centos 7 install

Trong bài viết này, chúng ta sẽ cùng tìm hiểu về cách cài đặt ErlangElixir trên CentOS 7. Trước khi cài đặt chúng, chúng ta sẽ cùng tìm hiểu qua về các ngôn ngữ này.

Erlang là một ngôn ngữ lập trình mã nguồn mở, được sử dụng để xây dựng các hệ thống thời gian thực linh hoạt có thể mở rộng quy mô với các yêu cầu về tính sẵn sàng cao. Một số được dùng trong các hệ thống viễn thông, ngân hàng, thương mại điện tử, tin nhắn… Nó được thiết kế tại Phòng thí nghiệm Khoa học Máy tính của công ty Ericsson.

Elixir là một ngôn ngữ chức năng, năng động được thiết kế để xây dựng các ứng dụng có thể mở rộng và có thể bảo trì. Elixir tận dụng Erlang VM, được biết đến với việc chạy các hệ thống có độ trễ thấp, phân tán và chịu lỗi, đồng thời được sử dụng thành công trong phát triển web và phần mềm nhúng.

Nào chúng ta sẽ cùng nhau bắt đầu cài đặt Erlang và Elixir trong hệ điều hành CentOS 7 64bit minimal server.

Trước khi cài đặt 2 ngôn ngữ này, chúng ta cần cài đặt chuẩn bị môi trường, sử dụng dòng lệnh :

yum update

yum install epel-release

yum install gcc gcc-c++ glibc-devel make ncurses-devel openssl-devel autoconf java-1.8.0-openjdk-devel git wget wxBase.x86_64

Cài đặt Erlang :

Hiện phiên bản Erlang trên repository chính thức của CentOS 7 đã khá cũ. Vì vậy chúng ta hãy tải về và cài đặt bản mới nhất của Erlang.

Tiến hành add repository của Erlang để cài đặt bản mới nhất. Để thực hiện, di chuyển đến trang repository của Erlang, download repository phù hợp với phiên bản hệ điều hành mà bạn đang sử dụng. Vì chúng ta đang thực hiện trên CentOS 7, nên chúng ta sẽ add các repository này :

wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

rpm -Uvh erlang-solutions-1.0-1.noarch.rpm

Update list repository bằng command :

yum update

Cài đặt Erlang bằng dòng lệnh :

yum install erlang

Như vậy là bạn đã có thể cài đặt được phiên bản mới nhất của Erlang.

Verify Erlang

Chạy dòng lệnh này để xác minh Erlang đã được cài đặt hay chưa.

Erl

Kết quả trả về :

Erlang/OTP 18 [erts-7.3] [source-d2a6d81] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]




Eshell V7.3 (abort with ^G)

1>

erlang centos 7 rpm Cài Đặt Ngôn Ngữ Erlang và Elixir Trên CentOS 7

Nếu thấy command prompt của Erlang, như vậy là nó đã hoạt động. Để đóng dòng lệnh, bấm 2 lần CTRL-C.

Test thử chương trình “hello_world “ bằng Erlang :

Tạo một file với tên “hello.erl”.

vi hello.erl

Thêm những dòng này vào file :

-module(hello).

-export([hello_world/0]).

hello_world() -> io:fwrite("hello, world\n").

Save và đóng file lại.

Vào giao diện dòng lệnh của Erlang bằng command :

Erl

Chạy lần lượt từng dòng lệnh này. Đừng quên dấu chấm ở cuối mỗi dòng lệnh.

c(hello).

hello:hello_world().

Kết quả trả về :

erlang centos repo Cài Đặt Ngôn Ngữ Erlang và Elixir Trên CentOS 7

Cài đặt Elixir :

Elixir có sẵn trên EPEL Repository, nhưng là phiên bản đã rất cũ. Thế nên để cài đặt bản mới nhất, chúng ta phải biên dịch và cài đặt từ tập tin nguồn.

Một lưu ý là để cài đặt Elixir, thì chúng ta cần cài đặt Erlang trước.

git clone https://github.com/elixir-lang/elixir.git

Lệnh trên sẽ sao chép phiên bản mới nhất vào một thư mục có tên là elixir trong thư mục làm việc hiện tại.

Đi đến thư mục elixir :

cd elixir/

chạy dòng lệnh này để bắt đầu biên dịch Elixir :

make clean test

Kết quả trả về :

[...]

Compiled lib/iex/app.ex

Compiled lib/iex.ex

Compiled lib/iex/autocomplete.ex

Compiled lib/iex/cli.ex

Compiled lib/iex/config.ex

Compiled lib/iex/history.ex

Compiled lib/iex/helpers.ex

Compiled lib/iex/introspection.ex

Compiled lib/iex/remsh.ex

Compiled lib/iex/server.ex

Compiled lib/iex/evaluator.ex

Compiled lib/iex/info.ex

Generated iex app

==> elixir (eunit)

All 194 tests passed.




==> elixir (exunit)

.............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................




Finished in 126.1 seconds (81.7s on load, 44.3s on tests)

2909 tests, 0 failures




Randomized with seed 29478

==> ex_unit (exunit)

..........................................................................................................................................................................................




Finished in 8.0 seconds (6.5s on load, 1.5s on tests)

186 tests, 0 failures




Randomized with seed 540622

==> logger (exunit)

........................................................................................




Finished in 4.4 seconds (3.9s on load, 0.4s on tests)

88 tests, 0 failures




Randomized with seed 662540

==> mix (exunit)

..................................................................................................................................................................................................................................................................................................................




Finished in 91.0 seconds (14.1s on load, 76.8s on tests)

306 tests, 0 failures




Randomized with seed 988584

==> eex (exunit)

.......................................................................




Finished in 0.9 seconds (0.8s on load, 0.07s on tests)

71 tests, 0 failures




Randomized with seed 955314

==> iex (exunit)

...........................................................................................................




Finished in 5.7 seconds (3.3s on load, 2.3s on tests)

107 tests, 0 failures




Randomized with seed 128154

elixir là gì Cài Đặt Ngôn Ngữ Erlang và Elixir Trên CentOS 7

Nếu kết quả trả về đạt yêu cầu, như vậy là chúng ta đã thành công. Tiếp theo, người dùng cần thêm đường dẫn của Elixir vào đường dẫn của môi trường đang làm việc. Nếu không, Elixir sẽ không hoạt động.

Để thực hiện, hãy chạy dòng lệnh :

export PATH="$PATH:/root/elixir/bin"

Như đã thấy, Anninhmang đã cài đặt elixir trong địa chỉ /root/elixir/. Bạn phải thay thế đường dẫn này bằng đường dẫn cài đặt Elixir thực tế của bạn.

Verify Elixir :

Để xác minh liệu rằng Elixir đã được cài đặt hay chưa, chạy dòng lệnh :

Iex

Kết quả trả về :

Erlang/OTP 18 [erts-7.3] [source-d2a6d81] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]




Interactive Elixir (1.3.0-dev) - press Ctrl+C to exit (type h() ENTER for help)

iex(1)>

Nếu hiển thị shell prompt của Elixir, như vậy là chúng ta đã cài đặt thành công. Để đóng shell, hãy bấm Ctrol-C 2 lần.

Để kiểm tra phiên bản của Elixir :

elixir –version

Kết quả trả về :

Elixir 1.3.0-dev (bbf7a23)

Như vậy là chúng ta đã cài đặt thành công môi trường phát triển cho 2 ngôn ngữ Erlang and Elixir trên hệ điều hành CentOS 7 Server.

  • erlang là gì
  • erlang centos 7 install
  • erlang centos 7 rpm
  • erlang centos repo
  • elixir là gì
  • elixir centos 7
  • elixir centos7 install

BÌNH LUẬN

Please enter your comment!
Please enter your name here