備忘録用に gyp (generate your project) のミニマムな使い方をメモ。

まず適当なプログラムを書く。

// hello.cc
#include <iostream>

int main() {
  std::cout << "Hello, gyp!" << std::endl;
  return 0;
}

gyp をインストールする。Ubuntu 12.04 なら次のようにインストールできる。

$ sudo apt-get install gyp

hello.gyp を書く。

{
  'targets': [
    {
      'target_name': 'hello',
      'type': 'executable',
      'sources': [
        'hello.cc',
      ],
    },
  ],
}

次のコマンドを叩くと Makefile が生成される。src directory を指定するために depth オプションが必要。無いとエラーを吐く。

$ gyp hello.gyp --depth=.

完成した Makefile を使って make する。コンパイル成果物が ./out/Default/ 以下に出力される。

$ make
  CXX(target) out/Default/obj.target/hello/hello.o
  LINK(target) out/Default/hello
  LINK(target) out/Default/hello: Finished
$ ./out/Default/hello
Hello, gyp!

*.gyp に書けるパラメータはこちらを参照: GypLanguageSpecification