小松です。
In the message of [ruby-list:17215] Re: make Ruby-1.4.2 on BeOS R4.5.2(Intel)
on 1999/9/29 11:04:58 MORITA Atsushi <moritaa / coe.nttdata.co.jp> wrote:
|>それとも、ファイル (ruby.def) ができていても、コマンドラインの
|>引数が足りなくて実は使われていないとか?
|
|はらださんの言うように、ruby.defは作られています。
|
|nkfのmake時のようすは、
|
|gcc -fPIC -I/boot/home/ruby-1.4.0 -I/boot/home/ruby-1.4.0 -g -O2 -I/usr/local/include -c nkf.c -o nkf.o
|ld -shared -L/boot/develop/lib/x86 -lbe -lroot -L/boot/home/ruby-1.4.0 -o nkf.so nkf.o -lruby
|
|こんな感じです。
ふーむ、引数が足りないみたいですね。
ldの時にruby.defを足す必要があるんでしょうけど、単に足せばいいのかな?
たとえば、
ld -shared ruby.def -L/boot/develop/lib/x86 -lbe -lroot -L/boot/home/ruby-1.4.0 -o nkf.so nkf.o -lruby
みたいに。
configure.inをみると、powerpcなら「-f ruby.exp」とかに
なってますので、何かスイッチが必要かもしれません。
ちなみに、Init_nkf等のexportはaixやmswin32では、
aix: -eInit_$(TARGET)
mswin32: -link /EXPORT:Init_$(TARGET)
のように引数で処理していて、cygwin (dllwrapを使わない場合) では、
--def=$(TARGET).exp
みたいになるのですが。
これでうまくゆくようなら、configure.inを以下のように変えれば
よいということになりますが……
--- configure.in.dist Mon Aug 30 16:00:47 1999
+++ configure.in Wed Sep 29 12:10:32 1999
@@ -468,5 +468,5 @@
i586*)
LDSHARED="ld -shared"
- DLDFLAGS="-L/boot/develop/lib/x86 -lbe -lroot"
+ DLDFLAGS="ruby.def -L/boot/develop/lib/x86 -lbe -lroot"
;;
*)
# --enable-sharedは……動いているのかな?
--
小松克行 / Katsuyuki Komatsu <komatsu / sarion.co.jp>