3

最近、Ubuntu 16.04 サーバーを Virtualbox vm にインストールしました。その後、次のスクリプトを使用して 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 vm は 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>

./configurekerl ビルド ディレクトリで& otp を手動で実行しようとしmakeましたが、hipe サポートが正常に有効になっているようです。ただし、手動ビルドでも同じ問題が残ります。

~/.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 機能はありますか? 私は何が欠けていますか?

4

1 に答える 1

2

Erlang/OTP ビルドとインストールページにリストされているように、インストールに必要ないくつかの必須ユーティリティがあります。述べたように:

これらは、Erlang/OTP を解凍してビルドするために必要なツールです。
. . .

  • GNU m4-- HiPE (ネイティブ コード) サポートが有効になっている場合。

m4したがって、HiPE サポートを有効にするには、GNU をインストールする必要があります。
次のコマンドを使用してインストールします。

sudo apt-get install m4
于 2016-09-15T14:04:08.940 に答える