[Rubycocoa-devel 1126] Re: thread patched libruby issue for the dmg package

アーカイブの一覧に戻る

Laurent Sansonetti lsans****@apple*****
Sat Jul 21 20:40:56 JST 2007


On Jul 21, 2007, at 12:37 PM, Eloy Duran wrote:

> Hey guys,
>
>>> Yesterday I told with Eloy about the thread patched libruby
>>> replacement issue for dmg binary distribution.
>>>
>>> # Finally I could understand what Eloy's idea was > Eloy
>>>
>>> It may be just put the patched libruby(for 1.8.2) into appropriate
>>> location in RubyCocoa.framework. And ld (dynamiclinker) link it at
>>> runtime. I don't know how to do it practically, but it should be
>>> possible maybe.
>>>
>>> priority of dynamic linked libruby by ld:
>>> 1st. appropriate location in RubyCocoa.framework
>>>      (e.g. RubyCcocoa.framework/Versions/Current/Libraries)
>>> 2nd. /usr/lib
>>>
>>> If possible, it should be better solution rather than replacing
>>> /usr/lib/libruby by the installer.
>
> Actually I was thinking about a Ruby.framework which could be bundle
> with a RubyCocoa app. And then any C extensions and other libs could
> also go in there to have a nice separation.

That's what we will have... in Leopard :)

> But it's more important to have something that works.
> So if you guys think it's better to bundle it in the
> RubyCocoa.framework then that's it :)

Maybe just for the binary dmg Tiger package. The dmg package doesn't  
require the entire Ruby distribution, but just the patched libruby.

>> I agree, this would be a better solution. I believe this is easily
>> possible.
>>
>> Unfortunately this week end I need to take a flight, to attend OSCON
>> in the US. And I will be a bit busy next week, but I will still have
>> some time to hack on RubyCocoa. So I will be able to investigate  
>> this,
>> unless someone does it first.
>
> I had been looking at how to create frameworks. I believe that libruby
> has to be treated with install_name_tool etc.
> But if we are going to bundle it in the RubyCocoa.framework then I'm
> not quite sure how to.....

Yes, I would bet that passing -install_name to ld(1) with the relative  
path inside the target bundle would work.

>> # Thanks Eloy for the idea :-)
>>
>> To be sure, we plan to do this _only_ for the .dmg Tiger package,  
>> right?
>
> Well, I would want to have the option (in for instance standalonify,
> like we already discussed Laurent) to bundle a specific version of
> libruby (like 1.8.6-universal) with C extensions (does standalonify
> already do this??) etc.

This could be done, mmh. We will have to investigate this a bit later  
though (not for 0.12.0).

> But for the installer this will be a good option indeed instead of  
> how it's now.
>
> Good flight Laurent!

Thanks!

Laurent




More information about the Rubycocoa-devel mailing list
アーカイブの一覧に戻る