LoginSignup
1
1

More than 5 years have passed since last update.

HARK をインストールした仮想環境を vagrant で作る (ソースコードコンパイル版)

Posted at

何をするのか

以下の記事で書いた、Vagrant の仮想環境を作る方法の、
ソースからコンパイルする版を作った。対象バージョンは 2.2.0
http://qiita.com/mzmttks/items/b6f45c97e662bd32eeb0

方法は上記記事と全く同じで、playbook のみが異なる。
結構時間がかかるので注意。

準備

  • vagrant をインストールする
  • 次のコマンドを実行
mkdir hark
cd hark

Vagrantfile  # 下記のファイルを作成
playbook.yml # 下記のファイルを作成

vagrant up

Vagrantfile

IP アドレスが重複している時は、 192.168.33.10 を別の何かに変える。

# -*- mode: ruby -*-
# vi: set ft=ruby :


Vagrant.configure('2') do |config|

  config.vm.hostname = "hark"

  config.vm.provider "virtualbox" do |provider, override|
    override.vm.box = "ubuntu/trusty64"
    override.vm.network "private_network", ip: "192.168.33.10"
    override.vm.network :forwarded_port, host: 3000, guest: 3000

    # Display the VirtualBox GUI when booting the machine
    provider.gui = false

    # Customize the amount of memory on the VM:
    provider.memory = "1024"
  end

  config.vm.provision :ansible do |ansible|
    ansible.playbook = "playbook.yml"  # playbookファイル名
    ansible.host_key_checking = false
  end
end

Playbook


- hosts: all
  sudo: yes
  tasks:
    - name: upgrade system
      apt: upgrade=dist update_cache=yes

    - name: install dependent packages
      apt: name={{ item }} state=latest
      with_items:
        # flowdesigner
        - g++
        - libxml2-dev
        - libasound2-dev
        - pkg-config
        - libgnomeui-dev
        # libharkio3
        - cmake
        - libzip-dev
        # hark-fd
        - libgtk2.0-dev
        - libboost-thread-dev
        # libharkio
        - libboost-filesystem-dev
        - libboost-regex-dev
        # hark-music
        - libfftw3-dev
        # hark-opencv
        - libopencv-dev
        # hark-python
        - python-dev
        - autoconf
        - libboost-python-dev
        # hark-designer
        - npm
        - nodejs-legacy

    - name: get HARK sources
      get_url: url=http://www.hark.jp/src/2.2.0/{{ item }} dest=/usr/local/src/
      with_items:
        - flowdesigner-0.9.1-hark_2.2.0.tar.gz
        - libharkio3_2.2.0.tar.gz
        - libharknetapi_2.2.0.tar.gz
        - hark-fd_2.2.0.tar.gz
        - hark-designer_2.2.0.tar.gz
        - libharkio_2.2.0.tar.gz
        - hark-music_2.2.0.tar.gz
        - hark-opencv_2.2.0.tar.gz
        - hark-python_2.2.0.tar.gz
        - hark-sss_2.2.0.tar.gz
        - hark-ene_2.2.0.tar.gz

    - name: unarchive HARK sources
      unarchive: src=/usr/local/src/{{ item }} dest=/usr/local/src/ copy=no
      with_items:
        - flowdesigner-0.9.1-hark_2.2.0.tar.gz
        - hark-designer_2.2.0.tar.gz
        - hark-fd_2.2.0.tar.gz
        - libharknetapi_2.2.0.tar.gz
        - libharkio3_2.2.0.tar.gz
        - libharkio_2.2.0.tar.gz
        - hark-music_2.2.0.tar.gz
        - hark-opencv_2.2.0.tar.gz
        - hark-python_2.2.0.tar.gz
        - hark-sss_2.2.0.tar.gz
        - hark-ene_2.2.0.tar.gz


    - name: Compile & install flowdesigner
      shell: ./configure && make && make install
      args:
        chdir: /usr/local/src/flowdesigner-0.9.1-hark

    - name: Compile & install libharknetapi
      shell: make && make install
      args:
        chdir: /usr/local/src/libharknetapi

    - name: Compile & install libharkio3
      shell: mkdir build && cd build && cmake .. && make && make install
      args:
        chdir: /usr/local/src/libharkio3

    - name: Compile & install hark-fd
      shell: ./configure && make && make install
      args:
        chdir: /usr/local/src/hark-fd


    - name: Compile & install libharkio
      shell: ./configure && make && make install
      args:
        chdir: /usr/local/src/libharkio

    - name: Compile & install hark-music
      shell: ./configure --with-hark-inc=/usr/local/include/hark && make && make install
      args:
        chdir: /usr/local/src/hark-music

    - name: Compile & install hark-opencv
      shell: ./configure --with-hark-inc=/usr/local/include/hark && make && make install
      args:
        chdir: /usr/local/src/hark-opencv

    - name: Compile & install hark-python
      shell: ./configure && make && make install
      args:
        chdir: /usr/local/src/hark-python

    - name: Compile & install hark-sss
      shell: ./configure --with-hark-inc=/usr/local/include/hark && make && make install
      args:
        chdir: /usr/local/src/hark-sss

    - name: Compile & install hark-ene
      shell: ./configure && make && make install
      args:
        chdir: /usr/local/src/hark-ene


    - name: Install dependent packages for HARK Designer
      shell: npm install
      args:
        chdir: /usr/local/src/hark-designer 

    - name: install pm2
      npm: name={{ item }} global=yes
      with_items:
        - pm2

    - name: Run hark designer
      shell: pm2 start app.js --node-args "app.js allowremote"
      args:
        chdir: /usr/local/src/hark-designer 
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1