投稿日:2015年06月22日

0.環境

[CentOS]  6.5
[node.js] 0.12.4
[npm]     2.10.1
[tsd]     0.6.0
[tsc]     1.5.0-beta

1.インストール

  • GoogleのQuickStartページに沿って進めます。(以降、JavaScriptはJSと記述)

    Angular2はJSでも動かせますが、JSのスーパーセットTypeScriptに対応しているので、Googleのページ同様、後者について記述します。

  • 最終的に下記の構成になります。

    tscを使ってhello.tsをhello.jsへ変換します。

    システム構成

  • まずnode.jsとnpmの依存管理を楽にするため、nvmをインストールします。

    ※CentOS 5系だとnode.jsを動かすのに苦労するので、こちらの記事を参考にCentOS6.x 環境構築を推奨します。

    # git clone git://github.com/creationix/nvm.git ~/.nvm
    # source ~/.nvm/nvm.sh
    
  • node.jsをバージョン指定でインストール。

    # nvm install 0.12.4
    
  • nvmでnode.jsのデフォルトバージョンを設定。

    # nvm alias default v0.12.4
    # vi ~/.bash_profile
    
  • .bash_profile の末尾に下記を追記。

    if [[ -s ~/.nvm/nvm.sh ]];
        then source ~/.nvm/nvm.sh
    fi
    
  • tsd (TypeScript用 型定義ファイル管理ツール) をインストール。

    ※npmのバージョンが低いとtsdのインストールが止まってしまうので注意。

    # npm install tsd@0.6.0 -g
    

    下記の警告が出たが5分ほどしてインストールが成功。

    npm WARN engine joi-assert@0.0.3: wanted: {"node":">= 0.10.0 <= 0.11.0"} (current: {"node":"0.12.4","npm":"2.10.1"})
    npm WARN peerDependencies The peer dependency minichain@~0.0.1 included from minitable will no
    npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency
    npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly.
    /root/.nvm/versions/node/v0.12.4/bin/tsd -> /root/.nvm/versions/node/v0.12.4/lib/node_modules/tsd/build/cli.js
    

    続けてAngular2用の型定義をインストール。

    # tsd query angular2 --action install
    

    ※rootユーザー以外だと下記エラーが出る可能性があります。

    >> install error!
    EACCES, mkdir '/etc/rc.d/init.d/typings'
    Error: EACCES, mkdir '/etc/rc.d/init.d/typings'
    at Error (native)
    
  • tsc (TypeScript→JS変換ツール) をインストール。

    # npm install -g typescript@^1.5.0-beta
    

2.サンプル実行

  • 任意のディレクトリで下記サンプルファイルを作成。

    # cd /app/angular2_quickstart/ # 任意のディレクトリ
    # touch hello.html hello.ts
    
    • ① hello.html

    • ② hello.ts

  • 上記ディレクトリにて、tscを監視モードで実行。

    # cd /app/angular2_quickstart/
    # 
    # tsc --watch -m commonjs -t es5 --emitDecoratorMetadata *.ts
    
  • 簡易HTTPサーバーをインストール後、上記ディレクトリで起動します。

    # npm install http-server -g
    #
    # cd /app/angular2_quickstart/
    #
    # http-server
    
  • ブラウザ確認

    • 下記URLで"Hello World !"が表示されれば成功です。(ホスト名(IP)は自分の環境に読み替え)
    • http://192.168.33.10:8080/hello.html

※参考ページ

投稿日:2015年05月26日

0.環境

[PHP]     5.4.17
[Laravel] 4.1.30

1.内容

  • Fluentテーブルビルダーのintegerメソッドの引数について、意外と探すのに手間取ったのでメモ。

    /**
     * @param $column        テーブルのカラム名
     * @param $autoIncrement 自動採番するかどうか
     * @param $unsigned      0以上の正の整数とするか
     */
    public function integer($column, $autoIncrement = false, $unsigned = false)
    

※参考にしたページ

投稿日:2015年05月10日

0.環境

[OS]             Windows7 (32bit 版)
[AndroidStudio]  1.1.0

1.エラー内容

  • 「Run 'app'」ボタンをクリックし、ビルド&実行しようとすると下記エラーダイアログが表示される。

    Failed to complete Gradle execution
    Cause:
    A fatal exception has occurred. Program will exit
    

2.回避方法

  • メニューから [File] -> [Settings] -> [Gradle] とたどって、[Gradle VM options] に "-XX:MaxHeapSize=256m -Xmx256m" を入力。(下記画像のオレンジ枠線)

    VMオプション設定

※参考にしたページ

投稿日:2015年05月09日

0.環境

[OS]             Windows7 (32bit 版)
[AndroidStudio]  1.1.0

1.エラー内容

  • 「Run 'app'」ボタンをクリックし、ビルド&実行しようとすると下記エラーが発生。

    Error:Unable to start the daemon process.
    This problem might be caused by incorrect configuration of the daemon.
    For example, an unrecognized jvm option is used.
    Please refer to the user guide chapter on the daemon at http://gradle.org/docs/2.2.1/userguide/gradle_daemon.html
    Please read the following process output to find out more:
    -----------------------
    Error occurred during initialization of VM
    Could not reserve enough space for object heap
    Error: Could not create the Java Virtual Machine.
    Error: A fatal exception has occurred. Program will exit.
    

2.回避方法

  • Android Studioを閉じる。

  • 下記フォルダを削除。(不安な場合は例えば次のようにリネーム DELETE_.gradle)

    C:\ユーザー\【ユーザー名】\.gradle
    
  • Android Studioを起動する。

  • 上記で消した.gradleフォルダが再作成され、ビルド&実行が成功する。

※参考にしたページ

投稿日:2015年05月05日

0.環境

[PC]  DELL LATITUDE E5500
[OS]  Windows7 (32bit 版)

1.概要

  • 復習を兼ねて、新PCにVagrantで開発環境を作りました。

    VagrantとVirtualBoxの関係は、下記ページの真ん中辺りにある図が分かりやすいです。

    Boosting teamwork with Vagrant

    VirtualBox上に仮想マシン(以下VM)起動し、そこにCentOSをインストールして開発環境とします。

    VirtualBoxを操作するためにVagrantというツールを使うイメージです。

2.BIOS設定変更

  • VMを起動する前準備として、BIOSの設定を変更します。

    PC起動時に、OSが起動する前に特定のキーを押してBIOS設定画面を開きます。

    (PCによって異なるので、下記は自分のPCに読み替えて下さい)

    PC起動時に[F2] または [F10]キーを押下。

    [Virtualization Support] - [Virtualization]を選択し、[Enable]にチェックをつけて[Apply]→[Exit]を選択。

    そのままOSが起動するのを待ちます。

3.VirtualBoxインストール

  • 下記ページで"VirtualBox 4.3.26 for Windows hosts" をクリックしVirtualBoxをダウンロード。

    VirtualBoxダウンロード

    ダウンロードもインストールも私の環境では数分かかりました。

    途中何度かOracle社のコンポーネントをインストールしますか?と聞かれたので全てYesを選択。

4.Vagrantインストール

  • 下記ページでWindows用を選択して Vagrantをダウンロード。

    Vagrantダウンロード

    インストールが終わったら再起動を求められます。

    boxファイル(用意されたVMイメージ)を取得し、VirtualBoxに追加。

    C:\Users\【ユーザー名】> vagrant box add CentOS65 https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box
    

5.Vagrantを使ってVirtualBoxのVMを起動

  • 適当なフォルダにVagrantファイルを作成し、VM起動時の設定を定義します。

    C:\apps\Vagrant\Vagrantfiles>mkdir centos
    
    C:\apps\Vagrant\Vagrantfiles>cd centos
    
    C:\apps\Vagrant\Vagrantfiles\centos>vagrant init CentOS65
    A `Vagrantfile` has been placed in this directory. You are now
    ready to `vagrant up` your first virtual environment! Please read
    the comments in the Vagrantfile as well as documentation on
    `vagrantup.com` for more information on using Vagrant.
    
    C:\apps\Vagrant\Vagrantfiles\centos>dir
    
  • 自動生成された Vagrantfile を編集。

    必要な箇所のコメントアウトを解除します。(編集前後のdiffを記載)

    # diff Vagrantfile.org Vagrantfile                       
    29c29
    <   # config.vm.network "private_network", ip: "192.168.33.10"
    ---
    >   config.vm.network "private_network", ip: "192.168.33.10"
    46c47
    <   # config.vm.provider "virtualbox" do |vb|
    ---
    >   config.vm.provider "virtualbox" do |vb|
    48c49
    <   #   vb.gui = true
    ---
    >       vb.gui = true
    51,52c52,53
    <   #   vb.memory = "1024"
    <   # end
    ---
    >       vb.memory = "1024"
    >   end
    
  • "vb.gui = true" のコメントアウトを解除しないと、VM起動時に下記エラーが出続けるので注意。

    default: Warning: Connection timeout. Retrying...
    
  • 編集が終わったら VagrantコマンドでVMを起動。

    C:\apps\Vagrant\Vagrantfiles\centos> vagrant up
    

6.ターミナルソフトでVMに接続

  • 使い慣れたターミナルソフトでVMに接続します。

    まずは用意された user=vagrant, password=vagrant で接続。

    (下記はpoderosaでの接続例)

    接続情報

    以降は root で接続したいので、rootのパスワードを再設定します。

    $ sudo passwd root
    

7.その他:ファイル共有

  • ホストOS(Windows)とゲストOS(CentOS)でファイル共有したい場合、上記5の Vagrantfile で下記の行を有効にします。

    Vagrantfileの変更を反映するにはVMの再起動が必要。

    (例) 左がWindows、右がCentOSのパス。(Windowsのパスは\を2つ重ねる必要あり)

    config.vm.synced_folder "c:\\vm\\share", "/share"
    

※参考にしたページ

インストール手順

エラーの際に役立ったページ

【免責事項】

本ブログのご利用につき、何らかのトラブルや損失・損害等につきましては一切責任を問わないものとします。