From: MIYAMUKO Katsuyuki Date: 2004-05-21T15:03:52+09:00 Subject: [ruby-dev:23555] Re: [ruby-cvs] ruby, ruby/ext, ruby/lib, ruby/lib/test/unit/ui/console,ruby/test,ruby/test/drb,ruby/test/ruby, ruby/test/soap/calc: * ext/extmk.rb(extmake):skip uncompiledextensions. みやむこです。 >>miniruby だと件のエラーになるみたいなので、とりあえず現在はソース >>ディレクトリとビルドディレクトリを分けて、miniruby ではなくビルドした >>ruby19 が利用されるようにすることで回避しています。 > > minirubyだとsymbolが解決できないということでしょうか。 make test-all が失敗するのはいただいたパッチで回避できたのですが、 気になったので調べて見ました。 Makefile を適当にいじっていると、どうも miniruby を作るときに XLDFLAGS を指定するとうまく行くようです。 DLDFLAGS と XLDFLAGS の違いも良く分かっていないのですが、どう直せばいい でしょうか。 == 修正前 % make : cc main.o libruby19-static.a -ldld -lcrypt -lm -o miniruby -g -DYYMA XDEPTH=300 : % nm miniruby | grep False rb_cFalseClass |1073927216|extern|data |$BSS$ % nm ruby19 | grep False rb_cFalseClass |1073927208|undef |common |$BSS$ % env RUBYLIB=$PWD/.ext:$PWD/.ext/hppa2.0n-hpux11.11 ./miniruby -rsocket -e0 /home/miyamuko/src/ruby/.ext/hppa2.0n-hpux11.11/socket.sl: Unresolved module fo r symbol: rb_cFalseClass (data) from /home/miyamuko/src/ruby/.ext/hppa2.0n-hpu x11.11/socket.sl - /home/miyamuko/src/ruby/.ext/hppa2.0n-hpux11.11/socket.sl (L oadError) % == 修正後 % make : cc main.o libruby19-static.a -ldld -lcrypt -lm -o miniruby -Wl,-E -L. -g -DYYMAXDEPTH=300 : % nm miniruby | grep False rb_cFalseClass |1073927208|undef |common |$BSS$ % nm ruby19 | grep False rb_cFalseClass |1073927208|undef |common |$BSS$ % env RUBYLIB=$PWD/.ext:$PWD/.ext/hppa2.0n-hpux11.11 ./miniruby -rsocket -e0 % -- みやむこ