create_makefile("foo/bar") のように、サブディレクトリ付きの
モジュール名指定で create_makefile を呼ぶと、吐かれた Makefile
では libdir の末尾にも /foo が付いてしまい、結果 rubylibdir から
hdrdir からみなおかしくなってビルドに失敗してしまいます。

 ということで、以下の二点について修正が必要と思います。

- libdir は原則 ${exec_prefix}/lib なので何も付くべきではない

- rubylibdir は *.rb のインストール先なので、上記の例の場合
  /foo が付く。よって hdrdir はこれを含むべきではない

この辺り、最近触ってよく分かっている方に直して頂きたいのですが、
いかがでしょうか。

-- 
                     /
                    /__  __            Akinori.org / MUSHA.org
                   / )  )  ) )  /     FreeBSD.org / Ruby-lang.org
Akinori MUSHA aka / (_ /  ( (__(  @ iDaemons.org / and.or.jp

"Freeze this moment a little bit longer, make each impression
  a little bit stronger..  Experience slips away -- Time stand still"