Bug #7823

sitelibへのsoのコピー (2.0.0)

Added by Akio Tajima about 2 years ago. Updated about 2 years ago.

[ruby-dev:46964]
Status:Closed
Priority:Urgent
Assignee:Nobuyoshi Nakada
ruby -v:2.0.0 Backport:

Description

artonです。

ruby-2.0.0-rc2を試していて気付いたのですが、setup.rbで拡張ライブラリをコ
ピーするとrequireに失敗します。
それが2.0.0で導入される非互換によるもの(=setup.rbを直すべきもの)か、バ
グなのか判断がつかないので質問です。
現象)
setup.rbは、$sitearchdirにコピーしますが、rbconfig.rbを読むとsitearchdirは、
$(sitelibdir)/$(arch)となっています(=site_ruby/2.0.0/i386-mswin32_100)。
ところが、$:にはsite_ruby/2.0.0/i386-mswin32_100は含まれず、
site_ruby/2.0.0/i386-msvcr100のみが含まれています。これはrbconfig.rbでは
sitearchlibdirです。

これは、拡張ライブラリは2.0.0以降は、$sitearchdirではなく$sitearchlibidr
へコピーしろ、ということでしょうか。
ただし、ruby本体のライブラリについては、ruby/2.0.0/i386-mswin32_100と
ruby/2.0.0/i386-msvcr100 の両方が$:に含まれています。
希望としては、sitearchdirを$:に含めて欲しいです(setup.rbを使っているラ
イブラリをいくつも持っているので全部直すのは面倒)。

--
arton artonx@yahoo.co.jp

Associated revisions

Revision 39201
Added by Nobuyoshi Nakada about 2 years ago

Makefile.sub: sitearch

  • win32/Makefile.sub (config.status): site and vendor directories should use sitearch, not arch. [Bug #7823]

Revision 39201
Added by Nobuyoshi Nakada about 2 years ago

Makefile.sub: sitearch

  • win32/Makefile.sub (config.status): site and vendor directories should use sitearch, not arch. [Bug #7823]

Revision 39202
Added by Nobuyoshi Nakada about 2 years ago

configure.in: sitearch

  • configure.in (rubysitearchprefix): sitearchdir and vendorarchdir should use sitearch, not arch. [Bug #7823]

Revision 39202
Added by Nobuyoshi Nakada about 2 years ago

configure.in: sitearch

  • configure.in (rubysitearchprefix): sitearchdir and vendorarchdir should use sitearch, not arch. [Bug #7823]

History

#1 Updated by Nobuyoshi Nakada about 2 years ago

  • Target version set to 2.0.0
  • ruby -v set to 2.0.0
  • Category set to ext
  • Status changed from Open to Assigned
  • Assignee set to Nobuyoshi Nakada
  • Priority changed from Normal to Urgent

そこはsitearchでないといけないので、明らかにバグです。

#2 Updated by Nobuyoshi Nakada about 2 years ago

  • % Done changed from 0 to 100
  • Status changed from Assigned to Closed

This issue was solved with changeset r39201.
Akio, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


Makefile.sub: sitearch

  • win32/Makefile.sub (config.status): site and vendor directories should use sitearch, not arch. [Bug #7823]

#3 Updated by Nobuyoshi Nakada about 2 years ago

  • Status changed from Closed to Assigned
  • Assignee changed from Nobuyoshi Nakada to Yusuke Endoh

#4 Updated by Yusuke Endoh about 2 years ago

  • Assignee changed from Yusuke Endoh to Akio Tajima

arton さん、
r39201r39202 で望みの挙動になっているか一応確認してもらえませんでしょうか。

Yusuke Endoh mame@tsg.ne.jp

#5 Updated by Yusuke Endoh about 2 years ago

  • Assignee changed from Akio Tajima to Nobuyoshi Nakada

arton さん、確認ありがとうございます。

なかださん、ruby_2_0_0 にバックポートしてくださいますでしょうか。

Yusuke Endoh mame@tsg.ne.jp

#6 Updated by Akio Tajima about 2 years ago

artonです。

trunk(r39202)で試してみました。
以下のように、i386-msvcr100がsitearchdirとなり、(当然ですが一応試した)
setup.rbでインストールしたsoがrequireできることを確認しました。

どうもありがとうございます。


2.0.0/i386-mswin32_100/2013-02-11

RbConfig::CONFIG
sitearchdir=/lib/ruby/site_ruby/2.0.0/i386-msvcr100
sitearchlibdir=/lib/i386-msvcr100

$:
/lib/ruby/site_ruby/2.0.0
/lib/ruby/site_ruby/2.0.0/i386-msvcr100
/lib/ruby/site_ruby
/lib/ruby/vendor_ruby/2.0.0
/lib/ruby/vendor_ruby/2.0.0/i386-msvcr100
/lib/ruby/vendor_ruby
/lib/ruby/2.0.0
/lib/ruby/2.0.0/i386-mswin32_100

--
arton artonx@yahoo.co.jp

#7 Updated by Yusuke Endoh about 2 years ago

なかださん、お忙しい?

Yusuke Endoh mame@tsg.ne.jp

#8 Updated by Yusuke Endoh about 2 years ago

なかださん、お忙しい?

Yusuke Endoh mame@tsg.ne.jp

#9 Updated by Nobuyoshi Nakada about 2 years ago

  • Status changed from Assigned to Closed

r39311でバックポートしました。

Also available in: Atom PDF