From: Takahiro Kambe Date: 2002-02-13T16:20:24+09:00 Subject: [ruby-dev:15883] Re: racc fails on alpha-freebsd ----Next_Part(Wed_Feb_13_16:20:08_2002_997)-- Content-Type: Text/Plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit In message <1013583208.879741.5590.nullmailer@ev.netlab.jp> on Wed, 13 Feb 2002 15:53:29 +0900, matz@ruby-lang.org (Yukihiro Matsumoto) wrote: > なお、元の問題はNetBSD側の問題のようだということでした。 NetBSD 1.5.2 → 1.5.3_ALPHA の間にあった変更で問題が起きなくなったとい う結果は、添付のメールのように確認されました。 ただ、あくまでも結果論であり、ELF周り(C言語的スタートアップ・モジュー ルおよび共有ライブラリの処理)の変更がMIにもMDにもかなりあり、具体的な 問題点の所在が確定できたわけではありません。言い替えると、回避できる コーディングといったものの存在は否定できないわけです。 (MI: machine independence, MD: machine dependence) そして、Subjectのalpha-freebsdでの問題が解明したわけでもありません。 -- 神戸 隆博(かんべ たかひろ) at 仕事場 ----Next_Part(Wed_Feb_13_16:20:08_2002_997)-- Content-Type: message/rfc822 Content-Transfer-Encoding: 7bit Return-Path: Received: from layna.kaynet.or.jp (YahooBB240112108.bbtec.net [43.240.112.108]) by ns.sky.yamashina.kyoto.jp (8.11.6+3.4W/3.7W-1.64) with ESMTP id g1CEWwn06299 for ; Tue, 12 Feb 2002 23:32:58 +0900 (JST) (envelope-from ) Received: (from kay@localhost) by layna.kaynet.or.jp (8.11.6/8.11.6) id g1CEVeF16757; Tue, 12 Feb 2002 23:31:40 +0900 (JST) Date: Tue, 12 Feb 2002 23:31:40 +0900 (JST) Message-Id: <200202121431.g1CEVeF16757@layna.kaynet.or.jp> From: kay@kaynet.or.jp To: matz@ruby-lang.org (Yukihiro Matsumoto), aamine@mx.edit.ne.jp, taca@sky.yamashina.kyoto.jp Cc: kay@kaynet.or.jp Subject: Re: [ruby-dev:15822] Re: racc fails on alpha-freebsd In-Reply-To: <200202011007.g11A79i20808@layna.kaynet.or.jp> References: <200201311128.g0VBS0R14914@layna.kaynet.or.jp> <20020131220001M.aamine@mx.edit.ne.jp> <200201311352.g0VDqud15334@layna.kaynet.or.jp> <20020131232206O.aamine@mx.edit.ne.jp> <200201311800.g0VI04O16304@layna.kaynet.or.jp> <1012543934.550161.13270.nullmailer@ev.netlab.jp> <200202010722.g117Mr220331@layna.kaynet.or.jp> <1012552797.407768.13382.nullmailer@ev.netlab.jp> <200202011007.g11A79i20808@layna.kaynet.or.jp> Mime-Version: 1.0 (generated by tm-edit 7.88) Content-Type: text/plain; charset=ISO-2022-JP kayです。 1.5.2 で作ったバイナリを 1.5ZA の環境で動作させるとちゃんと動くので alpha の ELF の問題が原因のような気になりました。そこで libc を入れ換 えたりして確認してみました。そうしたら ld.elf_so を更新した後の libc ではちゃんと動作することがわかりました。 細かいことは忘れましたが、crtbegin.o, crtend.o, ld.elf_so あたりの問 題が current で修正されていたのでそのせいだと思われます。多分、1.5.3 ではこの修正が取り込まれているんじゃないかと思って 1.5.3 にして make build をかけてみたところ、この環境では予想通り問題なく実行できるように なりました。 というわけで ruby のバグではなく NetBSD の libc (というか shlib)の問 題だったようです。 bash-2.05# cc -v Using builtin specs. gcc version egcs-2.91.66 19990314 (egcs-1.1.2 release) bash-2.05# ldd /usr/pkg/bin/ruby /usr/pkg/bin/ruby: -lcrypt.0 => /usr/lib/libcrypt.so.0 -lm.0 => /usr/lib/libm.so.0 -lruby.16 => /usr/pkg/lib/libruby.so.16 -lc.12 => /usr/lib/libc.so.12 bash-2.05# ls -l /usr/lib/libc.so.12* lrwxr-xr-x 1 root wheel 15 Feb 11 04:43 /usr/lib/libc.so.12 -> libc.so.12.62.1 -r--r--r-- 1 root wheel 1379987 Feb 11 04:43 /usr/lib/libc.so.12.62.1 bash-2.05# make ===> Validating dependencies for ruby-rdtool-0.6.10nb1 => Checksum OK for ruby/rdtool-0.6.10.tar.gz. ===> Extracting for ruby-rdtool-0.6.10nb1 ===> Required installed package ruby-optparse>=0.7: ruby-optparse-0.8.6 found ===> Required installed package ruby-racc>=1.3.6: ruby-racc-1.4.1 found ===> Required installed package ruby-strscan>=0.6.1: ruby-strscan-0.6.5 found ===> Required installed package ruby-amstd>=1.9: ruby-amstd-1.10.0 found ===> Required installed package ruby-base>=1.6.6: ruby-base-1.6.6nb1 found ===> Patching for ruby-rdtool-0.6.10nb1 ===> Applying NetBSD patches for ruby-rdtool-0.6.10nb1 ===> Configuring for ruby-rdtool-0.6.10nb1 ===> Fixing the #! line of rmi2html.rb ===> Fixing the #! line of utils/rdswap.rb creating Makefile ===> Building for ruby-rdtool-0.6.10nb1 racc rd/rdblockparser.ry racc rd/rdinlineparser.ry ruby -I. rd2 -r rd/rd2html-lib.rb README.rd > README.html cd /usr/pkgsrc/textproc/ruby-rdtool/work/rdtool-0.6.10; /usr/pkg/bin/ruby -I. rd2 -r rd/rd2html-lib.rb README.rd > README.html cd /usr/pkgsrc/textproc/ruby-rdtool/work/rdtool-0.6.10; /usr/pkg/bin/ruby -I. rd2 -r rd/rd2html-lib.rb doc/rd-draft.rd > doc/rd-draft.html cd /usr/pkgsrc/textproc/ruby-rdtool/work/rdtool-0.6.10; /usr/pkg/bin/ruby -I. rd2 -r rd/rd2html-lib.rb README.rd.ja > README.html.ja cd /usr/pkgsrc/textproc/ruby-rdtool/work/rdtool-0.6.10; /usr/pkg/bin/ruby -I. rd2 -r rd/rd2html-lib.rb doc/dev-note.rd.ja > doc/dev-note.html.ja cd /usr/pkgsrc/textproc/ruby-rdtool/work/rdtool-0.6.10; /usr/pkg/bin/ruby -I. rd2 -r rd/rd2html-lib.rb doc/rd-draft.rd.ja > doc/rd-draft.html.ja bash-2.05# -- 吉田恵介@川崎市高津区千年 (kay@kaynet.or.jp) ホームページ http://www.kaynet.or.jp/~kay/ ----Next_Part(Wed_Feb_13_16:20:08_2002_997)----