[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-devel:07211] ruby1.2-dev
rubyのパッケージ構造が変わって、拡張モジュールのコンパイルが
うまくいかなくなりました。拡張モジュールを書くのは初めてでよ
くわかっていないし、私のミスかなという気もするので、BTSに投
げる前に、とりあえずここで尋ねます。
具体的には、
--- extconf.rb
require 'mkmf'
$CFLAGS = "-I/usr/lib/ruby1.2/i386-linux"
have_library("sufary","sa_openfiles")
have_header("sufary.h")
if have_func("sa_openfiles")
create_makefile("sufary")
end
---
という状況でmakeをかけると
make: *** No rule to make target `/usr/lib/ruby/i386-linux/ruby.h', needed by `sufary.o'. Stop.
と怒られます。1.2がつく前のパッケージのときはうまくコンパイ
ルできていました。もちろん、ruby.hのインクルードはパスをつけ
ずに、#include "ruby.h" としています。mkmf.rbがうまく動いて
いないのではないかという気がします。
# rbconfig.rb が変?
ところで、ruby.hに/usr/includeからリンクを張っておくのはよく
ないでしょうか? 上記のような-Iを書くのって、なんか変な気が
するのですけど…。それとも、rbconfig.rbあたりの記述によって、
-Iなしでコンパイルできればいいのですが。
# このあたり、よくわかっていません。
--
川村 尚生