1.8 test-all failed

e$BKNIt$G$9!#:G6a!"KNIt$Ne(Bautobuilde$B$Ge(Btest-alle$B$,<:GT$7$F$$$^$9!#e(B
e$B%m%0$r8+$k$He(B

  • : test.rb finished
  • env ./ruby test/runner.rb
    dyld: ./ruby Undefined symbols:
    _PW_GID2VAL

e$B$H$J$C$F$$j!"$I$&$d$ie(Betc.soe$B$,$$+$7$/$J$C$F$$$k$h$&$G$9!#e(B

e$BKNIt$G$9!#e(B

URABE Shyouhei wrote:

dyld: ./ruby Undefined symbols:
PW_GID2VAL
e$B$b$&$A$g$C$HD4$Y$F$
$^$7$?!#e(Bmkmf.loge$B$K$h$k$He(B

have_type: checking for gid_t… -------------------- no

“/usr/bin/cc -I…/… -I…/…/. -I…/…/./ext/etc -std=iso9899:199409
-pedantic -Wall -Wno-parentheses -Wno-long-long -g -O2 -pipe -fno-common
-c conftest.c”
In file included from conftest.c:2:
/usr/include/grp.h:73: error: parse error before “gid_t”
/usr/include/grp.h:75: error: parse error before ‘}’ token
In file included from conftest.c:2:
/usr/include/grp.h:82: error: parse error before “struct”
/usr/include/grp.h:83: error: parse error before “size_t”
/usr/include/grp.h:87: error: parse error before “int”
conftest.c:6: warning: `t’ defined but not used
checked program was:
/* begin */

#include <grp.h>
#include <sys/types.h>

/top/
static gid_t t;
/* end */

e$B$H$J$C$F$$$^$9$,!"e(Bgid_te$B$Oe(Bsys/types.he$B$KDj5A$5$l$F$$$k$N$G!"e(Bsys/types.he$B$Ne(B
e$B$[$&$,e(Be$B@h$Ke(Be$B8F$P$l$J$$$H$$$1$J$$$h$&$G$9!#e(B

e$B$J$+$@$G$9!#e(B

At Mon, 3 Jul 2006 13:47:39 +0900,
URABE Shyouhei wrote in [ruby-dev:28939]:

e$B$H$J$C$F$$$^$9$,!"e(Bgid_te$B$Oe(Bsys/types.he$B$KDj5A$5$l$F$$$k$N$G!"e(Bsys/types.he$B$Ne(B
e$B$[$&$,e(Be$B@h$Ke(Be$B8F$P$l$J$$$H$$$1$J$$$h$&$G$9!#e(B

gid_te$B$,$^$C$?$/Dj5A$5$l$F$$$J$$>l9g$b9M$($F$$$^$;$s$G$7$?!#e(B

Index: ext/etc/extconf.rb

RCS file: /cvs/ruby/src/ruby/ext/etc/extconf.rb,v
retrieving revision 1.7
diff -p -U 2 -r1.7 extconf.rb
— ext/etc/extconf.rb 27 Jun 2006 02:36:14 -0000 1.7
+++ ext/etc/extconf.rb 3 Jul 2006 04:11:08 -0000
@@ -27,15 +27,14 @@ if a or b or c
[%w"uid_t pwd.h", %w"gid_t grp.h"].each do |t, *h|

  • h << “sys/types.h”
  • h.unshift(“sys/types.h”)
  • f = “INT2NUM”
    if have_type(t, h)
    if try_static_assert(“sizeof(#{t}) > sizeof(long)”, h)
    f = “LL2NUM”
  •  else
    
  • f = “INT2NUM”
    end
    if try_static_assert("(#{t})-1 > 0", h)
    f = “U#{f}”
    end
  •  $defs.push("-DPW_#{t.chomp('_t').upcase}2VAL=#{f}")
    
    end
  • $defs.push("-DPW_#{t.chomp(’_t’).upcase}2VAL=#{f}")
    end
    create_makefile(“etc”)

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:28940] Re: 1.8 test-all failed”
on Mon, 3 Jul 2006 14:17:30 +0900, [email protected] writes:

|At Mon, 3 Jul 2006 13:47:39 +0900,
|URABE Shyouhei wrote in [ruby-dev:28939]:
|> e$B$H$J$C$F$$$^$9$,!"e(Bgid_te$B$Oe(Bsys/types.he$B$KDj5A$5$l$F$$$k$N$G!"e(Bsys/types.he$B$Ne(B
|> e$B$[$&$,e(Be$B@h$Ke(Be$B8F$P$l$J$$$H$$$1$J$$$h$&$G$9!#e(B
|
|gid_te$B$,$^$C$?$/Dj5A$5$l$F$$$J$$>l9g$b9M$($F$$$^$;$s$G$7$?!#e(B

e$B%3%_%C%H$7$F$/$@$5$$!#Aa$a$K8+$D$+$C$F$h$+$C$?!#e(B