Issue #5852 has been reported by Ayumu AIZAWA.
Bug #5852: Failure test/test_mathn.rb
Author: Ayumu AIZAWA
Status: Open
Priority: High
Assignee:
Category: ext
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2012-01-06 trunk 34220) [x86_64-darwin10.8.0]
r34220 にて RUBY_API_VERSION を 2.0.0 にしたところ、Mathnのテストが失敗するようになりました。
ruby ➔ make test-all TESTS=test/test_mathn.rb
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext
– --disable-gems “./test/runner.rb” --ruby=“./miniruby -I./lib -I.
-I.ext/common ./tool/runruby.rb --extout=.ext – --disable-gems”
test/test_mathn.rb
Run options: “–ruby=./miniruby -I./lib -I. -I.ext/common
./tool/runruby.rb --extout=.ext – --disable-gems”
Running tests:
F
Finished tests in 0.168567s, 5.9324 tests/s, 11.8647 assertions/s.
- Failure:
test_power(TestMathn) [/Users/ayumin/github/ruby/test/test_mathn.rb:7]:
[ruby-core:25740].
<[]> expected but was
<[“dyld: lazy symbol binding failed: Symbol not found:
_nurat_canonicalization”,
" Referenced from:
/Users/ayumin/github/ruby/.ext/x86_64-darwin10.8.0/mathn/rational.bundle",
" Expected in: flat namespace",
“”,
“dyld: Symbol not found: _nurat_canonicalization”,
" Referenced from:
/Users/ayumin/github/ruby/.ext/x86_64-darwin10.8.0/mathn/rational.bundle",
" Expected in: flat namespace",
“”]>.
1 tests, 2 assertions, 1 failures, 0 errors, 0 skips
ruby -v: ruby 2.0.0dev (2012-01-06 trunk 34220) [x86_64-darwin10.8.0]
make: *** [yes-test-all] Error 1
Issue #5852 has been updated by Tomoyuki C…
configure.in で CANONICALIZATION_FOR_MATHN を設定する条件に if test “$MAJOR” =
“1” を使っているためのようです。
導入された経緯はよくわりませんが、この条件ははずしてしまってもいいのではないでしょうか。とりあえず以下の変更で test-all
が動くようならコミットしてしまおうと思います。
diff --git a/configure.in b/configure.in
index b9f3c79…905efd1 100644
— a/configure.in
+++ b/configure.in
@@ -86,9 +86,7 @@ RUBY_PROGRAM_VERSION=sed -n 's/^#define RUBY_VERSION "\(.*\)"/\1/p' $srcdir/ver AC_SUBST(RUBY_PROGRAM_VERSION) RUBY_RELEASE_DATE=
sed -n ‘s/^#define RUBY_RELEASE_DATE “(.*)”/\1/p’
$srcdir/version.h`
AC_SUBST(RUBY_RELEASE_DATE)
-if test “$MAJOR” = “1”; then
- AC_DEFINE(CANONICALIZATION_FOR_MATHN)
-fi
+AC_DEFINE(CANONICALIZATION_FOR_MATHN)
dnl checks for alternative programs
AC_CANONICAL_BUILD
AC_ARG_WITH(gcc,
Bug #5852: Failure test/test_mathn.rb
Author: Ayumu AIZAWA
Status: Open
Priority: High
Assignee:
Category: ext
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2012-01-06 trunk 34220) [x86_64-darwin10.8.0]
r34220 にて RUBY_API_VERSION を 2.0.0 にしたところ、Mathnのテストが失敗するようになりました。
ruby ➔ make test-all TESTS=test/test_mathn.rb
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext
– --disable-gems “./test/runner.rb” --ruby=“./miniruby -I./lib -I.
-I.ext/common ./tool/runruby.rb --extout=.ext – --disable-gems”
test/test_mathn.rb
Run options: “–ruby=./miniruby -I./lib -I. -I.ext/common
./tool/runruby.rb --extout=.ext – --disable-gems”
Running tests:
F
Finished tests in 0.168567s, 5.9324 tests/s, 11.8647 assertions/s.
- Failure:
test_power(TestMathn) [/Users/ayumin/github/ruby/test/test_mathn.rb:7]:
[ruby-core:25740].
<[]> expected but was
<[“dyld: lazy symbol binding failed: Symbol not found:
_nurat_canonicalization”,
" Referenced from:
/Users/ayumin/github/ruby/.ext/x86_64-darwin10.8.0/mathn/rational.bundle",
" Expected in: flat namespace",
“”,
“dyld: Symbol not found: _nurat_canonicalization”,
" Referenced from:
/Users/ayumin/github/ruby/.ext/x86_64-darwin10.8.0/mathn/rational.bundle",
" Expected in: flat namespace",
“”]>.
1 tests, 2 assertions, 1 failures, 0 errors, 0 skips
ruby -v: ruby 2.0.0dev (2012-01-06 trunk 34220) [x86_64-darwin10.8.0]
make: *** [yes-test-all] Error 1