我试图erlang 21.3
从源代码安装。没有明显/明显的错误,但我仍然看到版本 20。
源已下载并安装:
wget -O - "https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey" | sudo apt-key add -
wget http://erlang.org/download/otp_src_21.3.tar.gz
cd otp_src_21.3
sudo ./configure
sudo make
sudo make install
从安装有数百行如下
/otp_src_21.3/lib/ftp'
test -d "/usr/local/lib/erlang/releases/21" || mkdir -p "/usr/local/lib/erlang/releases/21" ; \
if test ! -f "/usr/local/lib/erlang/releases/21/installed_application_versions" ; then \
echo "ftp-1.0.2" > "/usr/local/lib/erlang/releases/21/installed_application_versions" || exit 1; \
else \
if test x = x`grep ftp-1.0.2 "/usr/local/lib/erlang/releases/21/installed_application_versions"` ; then \
echo ftp-1.0.2 >> "/usr/local/lib/erlang/releases/21/installed_application_versions" || exit 1; \
fi ; \
fi
make[3]: Leaving directory '/shared/otp_src_21.3/lib/ftp'
=== Leaving application ftp
make[2]: Leaving directory '/shared/otp_src_21.3/lib/ftp'
make[2]: Entering directory '/shared/otp_src_21.3/lib/tftp'
=== Entering application tftp
make[3]: Entering directory '/shared/otp_src_21.3/lib/tftp/src'
make -w RELEASE_PATH="/usr/local/lib/erlang" release_spec
make[4]: Entering directory '/shared/otp_src_21.3/lib/tftp/src'
/usr/bin/install -c -d "/usr/local/lib/erlang/lib/tftp-1.0.1/src"
/usr/bin/install -c -m 644 tftp.erl tftp_app.erl tftp_binary.erl tftp_engine.erl tftp_file.erl tftp_lib.erl tftp_logger.erl tftp_sup.erl tftp.hrl "/usr/local/lib/erlang/lib/tftp-1.0.1/src"
/usr/bin/install -c -d "/usr/local/lib/erlang/lib/tftp-1.0.1/ebin"
/usr/bin/install -c -m 644 ../ebin/tftp.beam ../ebin/tftp_app.beam ../ebin/tftp_binary.beam ../ebin/tftp_engine.beam ../ebin/tftp_file.beam ../ebin/tftp_lib.beam ../ebin/tftp_logger.beam ../ebin/tftp_sup.beam ../ebin/tftp.app \
../ebin/tftp.appup "/usr/local/lib/erlang/lib/tftp-1.0.1/ebin"
make[4]: Leaving directory '/shared/otp_src_21.3/lib/tftp/src'
make[3]: Leaving directory '/shared/otp_src_21.3/lib/tftp/src'
make[3]: Entering directory '/shared/otp_src_21.3/lib/tftp/doc/src'
make -w RELEASE_PATH="/usr/local/lib/erlang" release_spec
make[4]: Entering directory '/shared/otp_src_21.3/lib/tftp/doc/src'
make[4]: Nothing to be done for 'release_spec'.
make[4]: Leaving directory '/shared/otp_src_21.3/lib/tftp/doc/src'
make[3]: Leaving directory '/shared/otp_src_21.3/lib/tftp/doc/src'
make[3]: Entering directory '/shared/otp_src_21.3/lib/tftp'
test -d "/usr/local/lib/erlang/releases/21" || mkdir -p "/usr/local/lib/erlang/releases/21" ; \
if test ! -f "/usr/local/lib/erlang/releases/21/installed_application_versions" ; then \
echo "tftp-1.0.1" > "/usr/local/lib/erlang/releases/21/installed_application_versions" || exit 1; \
else \
if test x = x`grep tftp-1.0.1 "/usr/local/lib/erlang/releases/21/installed_application_versions"` ; then \
echo tftp-1.0.1 >> "/usr/local/lib/erlang/releases/21/installed_application_versions" || exit 1; \
fi ; \
fi
make[3]: Leaving directory '/shared/otp_src_21.3/lib/tftp'
=== Leaving application tftp
make[2]: Leaving directory '/shared/otp_src_21.3/lib/tftp'
make[1]: Leaving directory '/shared/otp_src_21.3/lib'
然后在最后:
(cd "/usr/local/lib/erlang" \
&& ./Install -minimal "/usr/local/lib/erlang")
/usr/bin/install -c -m 644 "/shared/otp_src_21.3/OTP_VERSION" "/usr/local/lib/erlang/releases/21"
cd /usr/local/bin
rm -f erl
rm -f erlc
rm -f epmd
rm -f run_erl
rm -f to_erl
rm -f dialyzer
rm -f typer
rm -f escript
rm -f ct_run
ln -s ../lib/erlang/bin/erl erl
ln -s ../lib/erlang/bin/erlc erlc
ln -s ../lib/erlang/bin/epmd epmd
ln -s ../lib/erlang/bin/run_erl run_erl
ln -s ../lib/erlang/bin/to_erl to_erl
ln -s ../lib/erlang/bin/dialyzer dialyzer
ln -s ../lib/erlang/bin/typer typer
ln -s ../lib/erlang/bin/escript escript
ln -s ../lib/erlang/bin/ct_run ct_run
erlang
似乎确实安装了:以下是当前日期:
$ ls -lrta $(which erlc)
lrwxrwxrwx 1 root root 22 Dec 27 00:49 /usr/local/bin/erlc -> ../lib/erlang/bin/erlc
但是版本erlang
还是系统默认的:
erl -eval 'erlang:display(erlang:system_info(otp_release)), halt().' -noshell
"20"
所以..它真的安装了吗?如果没有,是否缺少某些链接?这是在ubuntu 18.0.4
。