Bug #7823

sitelibへのsoのコピー (2.0.0)

Added by Akio Tajima about 1 year ago. Updated about 1 year ago.

[ruby-dev:46964]
Status:Closed
Priority:Urgent
Assignee:Nobuyoshi Nakada
Category:ext
Target version:2.0.0
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)となっています(=siteruby/2.0.0/i386-mswin32100)。
ところが、$:にはsiteruby/2.0.0/i386-mswin32100は含まれず、
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 1 year 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 1 year ago

configure.in: sitearch

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

History

#1 Updated by Nobuyoshi Nakada about 1 year ago

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

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

#2 Updated by Nobuyoshi Nakada about 1 year ago

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

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 1 year ago

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

#4 Updated by Yusuke Endoh about 1 year ago

  • Assignee changed from Yusuke Endoh to Akio Tajima

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

Yusuke Endoh mame@tsg.ne.jp

#5 Updated by Yusuke Endoh about 1 year ago

  • Assignee changed from Akio Tajima to Nobuyoshi Nakada

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

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

Yusuke Endoh mame@tsg.ne.jp

#6 Updated by Akio Tajima about 1 year 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/siteruby/2.0.0
/lib/ruby/site
ruby/2.0.0/i386-msvcr100
/lib/ruby/siteruby
/lib/ruby/vendor
ruby/2.0.0
/lib/ruby/vendorruby/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 1 year ago

なかださん、お忙しい?

Yusuke Endoh mame@tsg.ne.jp

#8 Updated by Yusuke Endoh about 1 year ago

なかださん、お忙しい?

Yusuke Endoh mame@tsg.ne.jp

#9 Updated by Nobuyoshi Nakada about 1 year ago

  • Status changed from Assigned to Closed

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

Also available in: Atom PDF