Forum: Ruby-dev [ruby-trunk - Bug #7823] sitelibへのsoのコピー (2.0.0)

Posted by mame (Yusuke Endoh) (Guest)
on 2013-02-11 07:23
(Received via mailing list)
Issue #7823 has been updated by mame (Yusuke Endoh).

Assignee changed from mame (Yusuke Endoh) to arton (Akio Tajima)

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

--
Yusuke Endoh <mame@tsg.ne.jp>
----------------------------------------
Bug #7823:  sitelibへのsoのコピー (2.0.0)
https://bugs.ruby-lang.org/issues/7823#change-36142

Author: arton (Akio Tajima)
Status: Assigned
Priority: Urgent
Assignee: arton (Akio Tajima)
Category: ext
Target version: 2.0.0
ruby -v: 2.0.0


 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>
Posted by arton (Guest)
on 2013-02-11 14:06
(Received via mailing list)
arton$B$G$9!#(B

trunk(r39202)$B$G;n$7$F$_$^$7$?!#(B
$B0J2<$N$h$&$K!"(Bi386-msvcr100$B$,(Bsitearchdir$B$H$J$j!"!JEvA3$G$9$,0l1~;n$7$?!K(B
setup.rb$B$G%$%s%9%H!<%k$7$?(Bso$B$,(Brequire$B$G$-$k$3$H$r3NG'$7$^$7$?!#(B

$B$I$&$b$"$j$,$H$&$4$6$$$^$9!#(B

----
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
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.