我最近在Virtualbox vm上安装了Ubuntu16.04服务器。之后,我想使用以下脚本安装erlang:
#!/bin/sh
DESTDIR="$HOME/workspace/erlang"
ACTIVATE=". $DESTDIR/activate"
KERL_CONFIGURE_DISABLE_APPLICATIONS="odbc"
KERL_CONFIGURE_OPTIONS="--enable-dirty-schedulers --enable-hipe --with-openssl"
curl -O https://raw.githubusercontent.com/kerl/kerl/master/kerl
chmod a+x kerl
./kerl update releases
mkdir -p "$DESTDIR"
./kerl build 19.0 erlang.19.0.dirty_sched.ssl
./kerl install erlang.19.0.dirty_sched.ssl "$DESTDIR"
echo "$ACTIVATE" >> "$HOME/.bashrc"
"$ACTIVATE"这个脚本运行得很好,但是即使我显式地启用了hipe,erlang在没有hipe支持的情况下启动了:
$ erl
Erlang/OTP 19 [erts-8.0] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:10] [kernel-poll:false]
Eshell V8.0 (abort with ^G)
1>我尝试在kerl构建目录中手动启用./configure & make otp,而且似乎很好地启用了make支持。但是,手工构建仍然存在同样的问题:
~/.kerl/builds/erlang.19.0.dirty_sched.ssl/otp_src_19.0/bin$ ./erl
Erlang/OTP 19 [erts-8.0] [source] [64-bit] [smp:8:8] [async-threads:10] [kernel-poll:false]
Eshell V8.0 (abort with ^G)
1>我在物理Ubuntu主机上使用相同的设置,hipe在那里无缝工作,所以我开始怀疑这是否与这台机器被虚拟化这一事实有关: hipe是否需要任何cpu特性?我遗漏了什么?
发布于 2016-09-15 14:04:08
正如Erlang/OTP构建和安装页面中所列出的,安装需要一些所需公用设施。如上文所述,他们:
这些是您解压缩和构建Erlang/OTP所需的工具。 。。。
m4 --如果启用了HiPE (本机代码)支持。因此,您需要安装GNU m4才能启用HiPE支持。
使用以下命令安装它:
sudo apt-get install m4https://stackoverflow.com/questions/39511282
复制相似问题