読者です 読者をやめる 読者になる 読者になる

shucreamTech

web系エンジニアが意識低く書くブログ

Ubuntu14.04でHack環境を構築する

目標

Hackが動くサーバを構築する。 以下の環境を構築する

・Ubuntu14.04 ・Hhvm 3.10.x

OSを用意

vagrantでいい感じにUbuntu14.04を仕入れる 挨拶代わりに apt-get をupdateしたりする。

$ sudo apt-get upgrade
$ sudo apt-get update

あと適当にgitとか入れておく。

(参考) apt-get慣れしていない僕にとって、apt yum対応表 が便利だった。

HHVMをインストール

公式インストール手順を参考に。

# installs add-apt-repository
sudo apt-get install software-properties-common

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0x5a16e7281be7a449
sudo add-apt-repository "deb http://dl.hhvm.com/ubuntu $(lsb_release -sc) main"
sudo apt-get update
sudo apt-get install hhvm

スッと入った。

試しに動かしてみる。

【PHP】

<?php
echo "Hello HHVM!!\n";

$ hhvm hello.php

【Hack】

<?hh
echo "Hello HHVM!!\n";

$ hhvm hello.hh

エラーが起きたら

.hh ファイルの実行で unknown exception was thrown というエラーが出る場合、ロケール設定に問題がある可能性がある。 $ sudo locale-gen ja_JP.UTF-8

また、以下の様なエラーが起きるケースもあった。

Fatal error: hello.hh appears to be a Hack file, but you do not appear to be running the Hack typechecker. See the documentation at http://docs.hhvm.com/manual/en/install.hack.bootstrapping.php for information on getting it running. You can also set Hack.Lang.LookForTypechecker=0 to disable this check (not recommended).

これは、プロジェクトルートで $ touch .hhconfig として空ファイルを作成し、 $ hh_client でHackのタイプチェッカーを走らせればOKです。