From: "kou (Kouhei Sutou)" Date: 2012-11-25T22:40:20+09:00 Subject: [ruby-dev:46615] [ruby-trunk - Bug #7344] gem pristine bigdecimal が失敗してしまう Issue #7344 has been updated by kou (Kouhei Sutou). あぁ、それは解決しないです。そっちはrubygems.orgにあるbigdecimal-1.1.0.gemをダウンロードしてビルドするのでdefault gemとかは関係ない世界になります。 gem install bigdecimalする機会があるのかどうかはおいておくとして、bigdecimal gemがトップレベルにextconf.rbとかbigdecimal.cとかを転がしているのをext/bigdecimal/以下に移動すれば解決するような気がします! コマンドでいえばこんな感じです。 % mkdir -p ext/bigdecimal % mv bigdecimal.{c,h} depend extconf.rb ext/bigdecimal/ で、それにあわせてbigdecimal.gemspecをこんな感じに編集します。 Index: bigdecimal.gemspec =================================================================== --- bigdecimal.gemspec (revision 37766) +++ bigdecimal.gemspec (working copy) @@ -10,13 +10,13 @@ s.email = "mrkn@mrkn.jp" s.description = "This library provides arbitrary-precision decimal floating-point number class." s.authors = ["Kenta Murata", "Shigeo Kobayashi"] - s.require_path = %[.] s.files = %w[ bigdecimal.gemspec - bigdecimal.c - bigdecimal.h + ext/bigdecimal/bigdecimal.c + ext/bigdecimal/bigdecimal.h README - depend extconf.rb + ext/bigdecimal/depend + ext/bigdecimal/extconf.rb lib/bigdecimal/jacobian.rb lib/bigdecimal/ludcmp.rb lib/bigdecimal/math.rb @@ -26,5 +26,5 @@ sample/nlsolve.rb sample/pi.rb ] - s.extensions = %w[extconf.rb] + s.extensions = %w[ext/bigdecimal/extconf.rb] end これで作ったbigdecimal gemをrubygems.orgにpushしておくといいんじゃないかと思います。(バージョンはあげないといけないと思います。) ---------------------------------------- Bug #7344: gem pristine bigdecimal が失敗してしまう https://bugs.ruby-lang.org/issues/7344#change-33858 Author: hsbt (Hiroshi SHIBATA) Status: Assigned Priority: Normal Assignee: mrkn (Kenta Murata) Category: core Target version: 2.0.0 ruby -v: ruby 2.0.0dev (2012-11-13) [x86_64-darwin12.2.1] gem pristine bigdecimal を実行すると以下のエラーが発生して落ちてしまいます。 % gem pristine bigdecimal Restoring gems to pristine condition... Building native extensions. This could take a while... ERROR: While executing gem ... (Gem::Installer::ExtensionBuildError) ERROR: Failed to build gem native extension. /Users/hsbt/.rbenv/versions/2.0.0-dev/bin/ruby extconf.rb checking for labs() in stdlib.h... yes checking for llabs() in stdlib.h... yes creating Makefile make compiling bigdecimal.c linking shared-object bigdecimal.bundle make install /usr/local/Cellar/coreutils/8.19/libexec/gnubin/install -c -m 0755 bigdecimal.bundle /Users/hsbt/.rbenv/versions/2.0.0-dev/lib/ruby/gems/2.0.0/gems/bigdecimal-1.1.0/. /usr/local/Cellar/coreutils/8.19/libexec/gnubin/install: ‘bigdecimal.bundle’ and ‘/Users/hsbt/.rbenv/versions/2.0.0-dev/lib/ruby/gems/2.0.0/gems/bigdecimal-1.1.0/./bigdecimal.bundle’ are the same file make: *** [install-so] Error 1 単独で実行している時は影響がないのですが、 OS アップデート時などに gem pristine --all を実行した時は b で必ず止まってしまうので困っています。 -- http://bugs.ruby-lang.org/