Ruby 1.8.6 One-Click Installer for Windows with Oniguruma-Patch compiled in

495 views
Skip to first unread message

Zeno R.R. Davatz

unread,
Jan 6, 2011, 9:58:15 AM1/6/11
to RubyInstaller
I am looking for a Ruby One-Click Installer with the Oniguruma-Patch
compiled in, for Windows. I believe there are many people out there
that want Ruby 1.8.6 but also want to use regular expressions because
they do not want to upgrade their applications as fast.

This is the Patch that needs to go into Ruby:

http://dev.ywesee.com/uploads/$PageName//oniguruma_patch_for_ruby-1.8.6_p369.20100615_from_Hannes-san.tar.gz

What we do on Linux is compile Ruby with that Patch, as we need Ruby
1.8.6 and the Oniguruma Patch. Oniguruma takes care of regular
expressions. I know Ruby 1.9 has it all. But I believe there are
actually many people who want Ruby 1.8.6 with regular expressions
enabled.

Now it would be great if there would be a one-click installer for that
so that the user does not have to Patch Ruby 1.8.6 in Windows himself.

As Luis Lavena recommends this is the place to go for the Ruby-One-
Click Installer
for Windows. So how about providing a separate package of Ruby1.8.6
with the Oniguruma Patch compiled in (Oniguruma does Regex-Expressions
in Ruby 1.8.6).

I would be willing to pay for it in USD or EUR or any other
currency. Are you interested or do you know somebody who could do
that?

I am also interested in providing the work to anybody who needs it.

Thank you for your Feedback.

Best
Zeno

Jon

unread,
Jan 6, 2011, 10:16:59 AM1/6/11
to rubyin...@googlegroups.com
> I am looking for a Ruby One-Click Installer with the Oniguruma-Patch
> compiled in, for Windows. I believe there are many people out there
> that want Ruby 1.8.6 but also want to use regular expressions because
> they do not want to upgrade their applications as fast.
>
> This is the Patch that needs to go into Ruby:
>
> http://dev.ywesee.com/uploads/$PageName//oniguruma_patch_for_ruby-1.8.6_p369.20100615_from_Hannes-san.tar.gz
>
> What we do on Linux is compile Ruby with that Patch, as we need Ruby
> 1.8.6 and the Oniguruma Patch. Oniguruma takes care of regular
> expressions. I know Ruby 1.9 has it all. But I believe there are
> actually many people who want Ruby 1.8.6 with regular expressions
> enabled.

Hi Zeno,

I'd like to better understand what you are requesting.

1) Are you asking for a custom RubyInstaller .exe (not .7z archive) in which the only difference from the 1.8.6 version we currently provide is the Onigurma patch applied?

2) Are you asking that this project continue to support (1) as we do with the other RubyInstallers? Or is this a custom build that you'd maintain and support?

3) Why 1.8.6 rather than 1.8.7? Does the patch apply successfully to 1.8.7 when building from Linux?

4) Have you tried cloning our git://github.com/oneclick/rubyinstaller.git repo, applying the patch, and building a 1.8.6 installer on your system? Any issues?

Jon

---
http://jonforums.github.com/

Gordon Thiesfeld

unread,
Jan 6, 2011, 10:27:59 AM1/6/11
to rubyin...@googlegroups.com

Have you looked at the Oniguruma gem[1]? I'm using it with 1.8.7, and
I could write up the steps needed to install the Oniguruma gem, if
that sounds like a good alternative.

Gordon

[1] http://oniguruma.rubyforge.org/

Zeno R.R. Davatz

unread,
Jan 6, 2011, 10:44:37 AM1/6/11
to RubyInstaller
Hi Jon

Thanks for the reply.

On 6 Jan., 16:16, Jon <jon.for...@gmail.com> wrote:
> > I am looking for a Ruby One-Click Installer with the Oniguruma-Patch
> > compiled in, for Windows. I believe there are many people out there
> > that want Ruby 1.8.6 but also want to use regular expressions because
> > they do not want to upgrade their applications as fast.
>
> > This is the Patch that needs to go into Ruby:
>
> >http://dev.ywesee.com/uploads/$PageName//oniguruma_patch_for_ruby-1.8...
>
> > What we do on Linux is compile Ruby with that Patch, as we need Ruby
> > 1.8.6 and the Oniguruma Patch. Oniguruma takes care of regular
> > expressions. I know Ruby 1.9 has it all. But I believe there are
> > actually many people who want Ruby 1.8.6 with regular expressions
> > enabled.

> I'd like to better understand what you are requesting.
>
> 1) Are you asking for a custom RubyInstaller .exe (not .7z archive) in which the only difference from the 1.8.6 version we currently provide is the Onigurma patch applied?

Yes correct. With the patch I linked above with Ruby Version 1.8.6
patch level 369

> 2) Are you asking that this project continue to support (1) as we do with the other RubyInstallers?  Or is this a custom build that you'd maintain and support?

I would maintain and support. Their would not be a lot of support I
guess, as it should just simplify installing Ruby 1.8.6 with the
Oniguruma Patch applied.

> 3) Why 1.8.6 rather than 1.8.7?  Does the patch apply successfully to 1.8.7 when building from Linux?

No. The patch does not (yet) work with Ruby 1.8.7 on Linux. Not yet
and may never do.

> 4) Have you tried cloning our git://github.com/oneclick/rubyinstaller.git repo, applying the patch, and building a 1.8.6 installer on your system?  Any issues?

No have not done that yet. I am looking into the README now. We
successfully applied the patch today on Cygwin. But what I want is a
clean Ruby-1.8.6-Oniguruma.exe Installer. One click and Ruby 1.8.6
with the Patch should be installed.

Let me know if you have any further questions.

Best
Zeno

PS: I know that Ruby 1.9 Regexp have less functions then Oniguruma
with Ruy 1.8.6 so this may find many Windows users happy. See this
discussion:
http://fossplanet.com/f14/%5Bruby-core-28235%5D-%5Bfeature-2759%5D-regexp-g-g-options-33265/

Zeno R.R. Davatz

unread,
Jan 6, 2011, 10:46:47 AM1/6/11
to RubyInstaller
Dear Gordon

Thank you for your reply.

> Have you looked at the Oniguruma gem[1]?  I'm using it with 1.8.7, and
> I could write up the steps needed to install the Oniguruma gem, if
> that sounds like a good alternative.

Yes, we have. But that does not work for us as we need Ruby 1.8.6 with
the Oniguruma Patch Version 2 as linked above, which is slightly
different then the Oniguruma Patch Version 5.x.

Best
Zeno

Jon

unread,
Jan 6, 2011, 10:58:36 AM1/6/11
to rubyin...@googlegroups.com
> > 2) Are you asking that this project continue to support (1) as we do with the other RubyInstallers?  Or is this a custom build that you'd maintain and support?
>
> I would maintain and support. Their would not be a lot of support I
> guess, as it should just simplify installing Ruby 1.8.6 with the
> Oniguruma Patch applied.

Understood and it makes a lot of sense especially for those who still want to use 1.8.6.

The key issue I have is that you'd not use the "RubyInstaller" or "OneClick" names for the custom installer you'd support as this could lead to a lot of confusion in that users might come to this project and want support that we wouldn't be able to provide. I think that would be very frustrating to all involved.

That said, Luis is the project manager of the RubyInstaller and his perspective on the naming issue is the one that's final :)


> > 4) Have you tried cloning our git://github.com/oneclick/rubyinstaller.git repo, applying the patch, and building a 1.8.6 installer on your system?  Any issues?
>
> No have not done that yet. I am looking into the README now. We
> successfully applied the patch today on Cygwin. But what I want is a
> clean Ruby-1.8.6-Oniguruma.exe Installer. One click and Ruby 1.8.6
> with the Patch should be installed.

I think you'll find that we've structured the build recipes in such a way that they're fairly easy to use and customize. They should provide the quickest way to build your custom installer. Hopefully :)

After you've tried the recipes and see how they work for you, let us know if you have any problems or further questions.


Jon

---
http://jonforums.github.com/

Zeno R.R. Davatz

unread,
Jan 6, 2011, 11:07:01 AM1/6/11
to RubyInstaller
On 6 Jan., 16:58, Jon <jon.for...@gmail.com> wrote:

> Understood and it makes a lot of sense especially for those who still want to use 1.8.6.

Yes, that is what I think as well.

> The key issue I have is that you'd not use the "RubyInstaller" or "OneClick" names for the custom installer you'd support as this could lead to a lot of confusion in that users might come to this project and want support that we wouldn't be able to provide.  I think that would be very frustrating to all involved.

Not a problem, I could name it
ywesee_Ruby_1.8.6_with_Oniguruma_Patch_2.x.exe and host it on
http://dev.ywesee.com - hot a word of you guys if you do not want
that.

> That said, Luis is the project manager of the RubyInstaller and his perspective on the naming issue is the one that's final :)

Ok. He is informed anyway.

> I think you'll find that we've structured the build recipes in such a way that they're fairly easy to use and customize.  They should provide the quickest way to build your custom installer.  Hopefully :)

I am trying this now. It fails for me without any patch, just running
this in the cloned rubyinstaller dir on Windows Vista according to the
README:

rake ruby18 COMPAT=1

with

** Invoke c:/Users/zdavatz/software/rubyinstaller/
sandbox/.checkpoints/.openssl-prepare (first_time)
** Execute c:/Users/zdavatz/software/rubyinstaller/
sandbox/.checkpoints/.openssl-prepare
git apply --directory sandbox/src-openssl resources/patches/openssl/
0001-Removed-static-for-exported-data.patch
resources/patches/openssl/0001-Removed-static-for-exported-data.patch:
19: trailing whitespace.
type _hide_##name
error: patch failed: sandbox/src-openssl/e_os2.h:264
error: sandbox/src-openssl/e_os2.h: patch does not apply
rake aborted!
Command failed with status (1): [git apply --directory sandbox/src-
openssl ...]
c:/Ruby187/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:995:in `sh'
c:/Ruby187/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1010:in
`call'
c:/Ruby187/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1010:in `sh'
c:/Ruby187/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1094:in `sh'

> After you've tried the recipes and see how they work for you, let us know if you have any problems or further questions.

I will try some more asap.

Thanks so far. Question: In which directory would I have to put the
patch? Can you provide me with a short howto for going about? I am
willing to pay for that as well.

Best
Zeno

Luis Lavena

unread,
Jan 6, 2011, 11:22:50 AM1/6/11
to rubyin...@googlegroups.com
On Thu, Jan 6, 2011 at 1:07 PM, Zeno R.R. Davatz <zda...@gmail.com> wrote:
>
> I am trying this now. It fails for me without any patch, just running
> this in the cloned rubyinstaller dir on Windows Vista according to the
> README:
>
> rake ruby18 COMPAT=1
>
> with
>
> ** Invoke c:/Users/zdavatz/software/rubyinstaller/
> sandbox/.checkpoints/.openssl-prepare (first_time)
> ** Execute c:/Users/zdavatz/software/rubyinstaller/
> sandbox/.checkpoints/.openssl-prepare
> git apply --directory sandbox/src-openssl resources/patches/openssl/
> 0001-Removed-static-for-exported-data.patch
> resources/patches/openssl/0001-Removed-static-for-exported-data.patch:
> 19: trailing whitespace.
>        type _hide_##name
> error: patch failed: sandbox/src-openssl/e_os2.h:264
> error: sandbox/src-openssl/e_os2.h: patch does not apply
> rake aborted!

Please ensure that autocrlf is set to false in your checkout of
rubyinstaller, patches are very sensitive about line endings and an
incorrect checkout will produce this.


>
> Thanks so far. Question: In which directory would I have to put the
> patch? Can you provide me with a short howto for going about? I am
> willing to pay for that as well.
>

Take a look to how other packages like libffi or openssl contains the
patches, these are basically diffs applied to the extracted source
code that needs to be compatible with "git apply" command.
--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

Jon

unread,
Jan 6, 2011, 11:34:38 AM1/6/11
to rubyin...@googlegroups.com
> > I think you'll find that we've structured the build recipes in such a way that they're fairly easy to use and customize.  They should provide the quickest way to build your custom installer.  Hopefully :)
>
> I am trying this now. It fails for me without any patch, just running
> this in the cloned rubyinstaller dir on Windows Vista according to the
> README:
>
> rake ruby18 COMPAT=1
>
> with
>
> ** Invoke c:/Users/zdavatz/software/rubyinstaller/
> sandbox/.checkpoints/.openssl-prepare (first_time)
> ** Execute c:/Users/zdavatz/software/rubyinstaller/
> sandbox/.checkpoints/.openssl-prepare
> git apply --directory sandbox/src-openssl resources/patches/openssl/
> 0001-Removed-static-for-exported-data.patch
> resources/patches/openssl/0001-Removed-static-for-exported-data.patch:
> 19: trailing whitespace.
> type _hide_##name
> error: patch failed: sandbox/src-openssl/e_os2.h:264
> error: sandbox/src-openssl/e_os2.h: patch does not apply
> rake aborted!

Yikes, looks like you have git on PATH so the easy fix is out. I never use or build 1.8.6 anymore, but let me try it on my machine this afternoon.

BTW, the above will try to build 1.8.6-p398 because of https://github.com/oneclick/rubyinstaller/blob/master/config/ruby_installer.rb#L46 This can be overridden in a few ways, but lets see if I can replicate your failure on my Win7 box.

Don't wait on me to get back with you...try putting a .rb file into <RUBYINSTALLER_DIR>\override and do something similar to the following in which you override the relevant parts of https://github.com/oneclick/rubyinstaller/blob/master/config/ruby_installer.rb#L18-51 and bypass the COMPAT command line flag. Force the 1.8 build recipe to download and use the right 1.8.6 patch level you need.

# file: override\rbreadline_updates.rb
if ENV['RBREADLINE'] then
puts '[INFO] Overriding to use updated rbreadline...'

RubyInstaller::PureReadline.url = 'https://github.com/downloads/luislavena/rb-readline'
RubyInstaller::PureReadline.files = [ 'rb-readline-0.3.0.zip' ]
end


> > After you've tried the recipes and see how they work for you, let us know if you have any problems or further questions.
>
> I will try some more asap.
>
> Thanks so far. Question: In which directory would I have to put the
> patch? Can you provide me with a short howto for going about? I am
> willing to pay for that as well.

We put the actual patches in https://github.com/oneclick/rubyinstaller/tree/master/resources/patches and then have specific build recipes apply the patch.

For example, here's the openssl patch part of the recipe https://github.com/oneclick/rubyinstaller/blob/master/recipes/dependencies/openssl.rake#L34-40

We normally do not patch up the Ruby source, but recently Luis needed to patch 1.9 for a serious issue regarding registry access. He added https://github.com/oneclick/rubyinstaller/blob/master/recipes/interpreter/ruby19.rake#L72-76 to the 1.9 build recipe and you'd likely need to do something similiar to the 1.8 recipe, but I've not looked at the 1.8 recipe at https://github.com/oneclick/rubyinstaller/blob/master/recipes/interpreter/ruby18.rake


Jon

---
http://jonforums.github.com/

Jon

unread,
Jan 6, 2011, 11:37:20 AM1/6/11
to rubyin...@googlegroups.com
> Please ensure that autocrlf is set to false in your checkout of
> rubyinstaller, patches are very sensitive about line endings and an
> incorrect checkout will produce this.

something like:

C:\Users\Jon\Documents\RubyDev>git config --global --list
core.editor=c:/vim/vim73/gvim.exe
core.autocrlf=false
color.ui=auto
user.name=Jon
...

Zeno R.R. Davatz

unread,
Jan 6, 2011, 3:02:41 PM1/6/11
to RubyInstaller
On 6 Jan., 17:34, Jon <jon.for...@gmail.com> wrote:
> > > I think you'll find that we've structured the build recipes in such a way that they're fairly easy to use and customize.  They should provide the quickest way to build your custom installer.  Hopefully :)
>
> > I am trying this now. It fails for me without any patch, just running
> > this in the cloned rubyinstaller dir on Windows Vista according to the
> > README:
>
> > rake ruby18 COMPAT=1
>
> > with
>
> > ** Invoke c:/Users/zdavatz/software/rubyinstaller/
> > sandbox/.checkpoints/.openssl-prepare (first_time)
> > ** Execute c:/Users/zdavatz/software/rubyinstaller/
> > sandbox/.checkpoints/.openssl-prepare
> > git apply --directory sandbox/src-openssl resources/patches/openssl/
> > 0001-Removed-static-for-exported-data.patch
> > resources/patches/openssl/0001-Removed-static-for-exported-data.patch:
> > 19: trailing whitespace.
> >         type _hide_##name
> > error: patch failed: sandbox/src-openssl/e_os2.h:264
> > error: sandbox/src-openssl/e_os2.h: patch does not apply
> > rake aborted!
>
> Yikes, looks like you have git on PATH so the easy fix is out.  I never use or build 1.8.6 anymore, but let me try it on my machine this afternoon.
>
> BTW, the above will try to build 1.8.6-p398 because ofhttps://github.com/oneclick/rubyinstaller/blob/master/config/ruby_ins... This can be overridden in a few ways, but lets see if I can replicate your failure on my Win7 box.
>
> Don't wait on me to get back with you...try putting a .rb file into <RUBYINSTALLER_DIR>\override and do something similar to the following in which you override the relevant parts ofhttps://github.com/oneclick/rubyinstaller/blob/master/config/ruby_ins...and bypass the COMPAT command line flag.  Force the 1.8 build recipe to download and use the right 1.8.6 patch level you need.
>
> # file: override\rbreadline_updates.rb
> if ENV['RBREADLINE'] then
>   puts '[INFO] Overriding to use updated rbreadline...'
>
>   RubyInstaller::PureReadline.url = 'https://github.com/downloads/luislavena/rb-readline'
>   RubyInstaller::PureReadline.files = [ 'rb-readline-0.3.0.zip' ]
> end
>
> > > After you've tried the recipes and see how they work for you, let us know if you have any problems or further questions.
>
> > I will try some more asap.
>
> > Thanks so far. Question: In which directory would I have to put the
> > patch? Can you provide me with a short howto for going about? I am
> > willing to pay for that as well.
>
> We put the actual patches inhttps://github.com/oneclick/rubyinstaller/tree/master/resources/patchesand then have specific build recipes apply the patch.
>
> For example, here's the openssl patch part of the recipehttps://github.com/oneclick/rubyinstaller/blob/master/recipes/depende...
>
> We normally do not patch up the Ruby source, but recently Luis needed to patch 1.9 for a serious issue regarding registry access.  He addedhttps://github.com/oneclick/rubyinstaller/blob/master/recipes/interpr...to the 1.9 build recipe and you'd likely need to do something similiar to the 1.8 recipe, but I've not looked at the 1.8 recipe athttps://github.com/oneclick/rubyinstaller/blob/master/recipes/interpr...

Thanks I am gonna try this. I believe the easier it is to build
patched versions of ruby with Ruby-Installer that you then can install
with one click, the better for everybody. I think this is a really
useful feature for a lot of companies because they can distribute
their patched versions of Ruby like that.

I will look into this further tomorrow.

Thanks again.

Best
Zeno

Zeno R.R. Davatz

unread,
Jan 6, 2011, 3:09:39 PM1/6/11
to RubyInstaller
On 6 Jan., 17:22, Luis Lavena <luislav...@gmail.com> wrote:

> Please ensure that autocrlf is set to false in your checkout of
> rubyinstaller, patches are very sensitive about line endings and an
> incorrect checkout will produce this.

Thank you Luis, very helpful as usual!

Little question: Which git package on Windows do you use? I am using
msysgit. I will double-check those settings.

Is there any git package you recommend?

I am more familiar with Linux. ;) - I can also take git out of my path
if that is what you recommend (Jon) and then just use the supplied git-
terminal of msysgit.

Best
Zeno

Jon

unread,
Jan 6, 2011, 3:19:02 PM1/6/11
to rubyin...@googlegroups.com
> Little question: Which git package on Windows do you use? I am using
> msysgit. I will double-check those settings.
>
> Is there any git package you recommend?
>
> I am more familiar with Linux. ;) - I can also take git out of my path
> if that is what you recommend (Jon) and then just use the supplied git-
> terminal of msysgit.

I'm all for keeping git on PATH :) I use the latest msysgit (1.7.3.1) and put C:\git\cmd on PATH and it Just Works using Command Prompt and Console2 shells. My earlier feedback was simply showing you git's autocrlf setting that Luis suggested.


Jon

---
http://jonforums.github.com/

Zeno R.R. Davatz

unread,
Jan 6, 2011, 3:26:06 PM1/6/11
to RubyInstaller
Thanks, msysgit [http://code.google.com/p/msysgit/] asks you what
endings you want when you install it the first time on Windows. I will
double check tomorrow.

Best
Zeno

Luis Lavena

unread,
Jan 6, 2011, 3:28:11 PM1/6/11
to rubyin...@googlegroups.com
On Thu, Jan 6, 2011 at 5:26 PM, Zeno R.R. Davatz <zda...@gmail.com> wrote:
> Thanks, msysgit [http://code.google.com/p/msysgit/] asks you what
> endings you want when you install it the first time on Windows. I will
> double check tomorrow.
>

You can select the medium option (which is checkout as is, commit as
LF) or the 3rd option which equals to setting autocrlf to false.

Jon

unread,
Jan 6, 2011, 3:29:37 PM1/6/11
to rubyin...@googlegroups.com

An easy way to set it is to edit your %USERPROFILE%\.gitconfig to include something like:

[core]
editor = c:/vim/vim73/gvim.exe
autocrlf = false
[color]
ui = auto
[push]
default = current

...


Jon

---
http://jonforums.github.com/

Zeno R.R. Davatz

unread,
Jan 7, 2011, 2:44:54 AM1/7/11
to RubyInstaller
Ok, I am documenting my steps here:

http://dev.ywesee.com/wiki.php/Ruby/186OnigurumaWindows

at the moment it is compiling just fine without the Oniguruma Patch.

That will be the next step.

Best
Zeno

Zeno R.R. Davatz

unread,
Jan 7, 2011, 3:05:45 AM1/7/11
to RubyInstaller
On 6 Jan., 21:28, Luis Lavena <luislav...@gmail.com> wrote:
> On Thu, Jan 6, 2011 at 5:26 PM, Zeno R.R. Davatz <zdav...@gmail.com> wrote:
>
> > Thanks, msysgit [http://code.google.com/p/msysgit/] asks you what
> > endings you want when you install it the first time on Windows. I will
> > double check tomorrow.
>
> You can select the medium option (which is checkout as is, commit as
> LF) or the 3rd option which equals to setting autocrlf to false.

Ok, I am running

rake ruby18 COMPAT=1 --trace

again and it results in

make[1]: Entering directory `/c/Users/zdavatz/software/rubyinstaller/
sandbox/ruby18_build/ext/socket'
gcc -I. -I../.. -I../../../ruby_1_8 -I../../../ruby_1_8/ext/socket -
DHAVE_SOCKADDR_STORAGE -DHAVE_INET_NTOA -DHAVE_GETSERVBYPORT -
Dsocklen_t=int -DHAVE_WSACLEANUP -DHAVE_GET
HOSTNAME -I. -g -O2 -DFD_SETSIZE=256 -c ../../../ruby_1_8/ext/
socket/socket.c
In file included from ../../../ruby_1_8/win32/win32.h:30:0,
from ../../../ruby_1_8/defines.h:183,
from ../../../ruby_1_8/ruby.h:37,
from ../../../ruby_1_8/ext/socket/socket.c:13:
c:\users\zdavatz\software\rubyinstaller\sandbox\devkit\mingw\bin\../
lib/gcc/mingw32/4.5.1/../../../../include/ws2tcpip.h:272:13: error:
two or more data types in declaration
specifiers
make[1]: *** [socket.o] Error 1
make[1]: Leaving directory `/c/Users/zdavatz/software/rubyinstaller/
sandbox/ruby18_build/ext/socket'
make: *** [all] Error 1
rake aborted!
Command failed with status (2): [make...]
C:/Ruby187/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:995:in `sh'
C:/Ruby187/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1010:in
`call'

any hints?

my git settings are

C:\Users\zdavatz\software\rubyinstaller>git config --global --list
core.editor=c:/vim/vim73/gvim.exe
core.autocrlf=false
color.ui=auto
push.default=current

Best
Zeno

Zeno R.R. Davatz

unread,
Jan 7, 2011, 3:12:45 AM1/7/11
to RubyInstaller
this seems to be related to the error:

http://groups.google.com/group/rubyinstaller/msg/145c7fcf65881036

hints on the next step?

Best
Zeno

Luis Lavena

unread,
Jan 7, 2011, 6:39:04 AM1/7/11
to rubyin...@googlegroups.com
On Fri, Jan 7, 2011 at 5:12 AM, Zeno R.R. Davatz <zda...@gmail.com> wrote:
>
> hints on the next step?
>

rd sandbox /s/q

rake devkit DKVER=mingw-32-3.4.5

rake ruby18 COMPAT=1

See my previous comment on this thread: Ruby 1.8.6 is not compatible
with our GCC 4.5.1, you need GCC 3.4.5.

Zeno R.R. Davatz

unread,
Jan 7, 2011, 7:45:24 AM1/7/11
to RubyInstaller
On 7 Jan., 12:39, Luis Lavena <luislav...@gmail.com> wrote:
> On Fri, Jan 7, 2011 at 5:12 AM, Zeno R.R. Davatz <zdav...@gmail.com> wrote:

> > hints on the next step?
>
> rd sandbox /s/q
>
> rake devkit DKVER=mingw-32-3.4.5
>
> rake ruby18 COMPAT=1
>
> See my previous comment on this thread: Ruby 1.8.6 is not compatible
> with our GCC 4.5.1, you need GCC 3.4.5.

Thanks!

I am running

rake ruby18 COMPAT=1

now. Interesting. First I got a permission denied error for my
sandbox. Then I ran the command again:

rake ruby18 COMPAT=1 --trace

then it continued and stopped with another error.

Then I rand it again

rake ruby18 COMPAT=1

an not it is running even longer?

Will keep you posted on the outcome. But this permission denied error
is strange. It disappears when running the comand again with --trace.

I also noticed that the Oniguruma-patch for Windows ist different from
the one for Linux.

Linux: http://dev.ywesee.com/uploads/$PageName//Oniguruma_2.5.9_patch.txt

I guess this patch still has to be ported to windows to work, or can
this be applied? It worked with cygwin.

Best
Zeno

Zeno R.R. Davatz

unread,
Jan 7, 2011, 7:59:41 AM1/7/11
to RubyInstaller
On 7 Jan., 12:39, Luis Lavena <luislav...@gmail.com> wrote:
> rd sandbox /s/q
>
> rake devkit DKVER=mingw-32-3.4.5
>
> rake ruby18 COMPAT=1
>
> See my previous comment on this thread: Ruby 1.8.6 is not compatible
> with our GCC 4.5.1, you need GCC 3.4.5.

Ok this ends with:

** Moving out pkgs from rubygems-1.3.7 and drop into sandbox/rubygems
** Moving out Rakefile from rubygems-1.3.7 and drop into sandbox/
rubygems
** Moving out README from rubygems-1.3.7 and drop into sandbox/
rubygems
** Moving out setup.rb from rubygems-1.3.7 and drop into sandbox/
rubygems
** Moving out test from rubygems-1.3.7 and drop into sandbox/rubygems
rake aborted!
Permission denied - sandbox/rubygems/rubygems-1.3.7/test or sandbox/
rubygems/test
C:/Ruby187/lib/ruby/1.8/fileutils.rb:506:in `rename'
C:/Ruby187/lib/ruby/1.8/fileutils.rb:506:in `mv'
C:/Ruby187/lib/ruby/1.8/fileutils.rb:1397:in `fu_each_src_dest'
C:/Ruby187/lib/ruby/1.8/fileutils.rb:1411:in `fu_each_src_dest0'
C:/Ruby187/lib/ruby/1.8/fileutils.rb:1395:in `fu_each_src_dest'
C:/Ruby187/lib/ruby/1.8/fileutils.rb:495:in `mv'

I do not have any special permissions on that directory. I would not
even know how to change them on Windows.

Best
Zeno

Luis Lavena

unread,
Jan 7, 2011, 8:03:10 AM1/7/11
to rubyin...@googlegroups.com
On Fri, Jan 7, 2011 at 9:59 AM, Zeno R.R. Davatz <zda...@gmail.com> wrote:
> Ok this ends with:

>
> Permission denied - sandbox/rubygems/rubygems-1.3.7/test or sandbox/
> rubygems/test

Permission issues happen when you have antivirus software running or a
Windows explorer monitoring that folder (or any open editor or program
that might be locking the tree)

Please see in the group, this was mentioned before.

Zeno R.R. Davatz

unread,
Jan 7, 2011, 8:25:05 AM1/7/11
to RubyInstaller
On 7 Jan., 14:03, Luis Lavena <luislav...@gmail.com> wrote:

> Permission issues happen when you have antivirus software running or a
> Windows explorer monitoring that folder (or any open editor or program
> that might be locking the tree)

Excellent that worked! Thank you very much!

Now to the Oniguruma patch. Can I just wrap a recipe around the Linux-
Oniguruma-Patch or will that not work? As I understand that will not
work as simple as it worked with Cygwin.

This is the Oniguruma Patch for Linux, Version 2.5.9.

http://dev.ywesee.com/uploads/$PageName//Oniguruma_2.5.9_patch.txt

All the files can be found here:
http://dev.ywesee.com/uploads/%24PageName//oniguruma_patch_for_ruby-1.8.6_p369.20100615_from_Hannes-san.tar.gz

For Linux we normally use these steps to patch:

$ tar zxvf ruby-1.8.6-p369.tar.gz
$ tar zxvf oniguruma_patch_for_ruby-1.8.6_p369.20100615_from_Hannes-
san.tar.gz
$ cd oniguruma
$ ./configure --with-rubydir=/home/masa/work/ruby-1.8.6-p369
$ make 186
$ cd /home/masa/work/ruby-1.8.6-p369
$ ./configure --prefix=/home/masa/bin/ruby186
$ make
$ make install

Any hints for Windows?

Best
Zeno

Zeno R.R. Davatz

unread,
Jan 7, 2011, 9:24:57 AM1/7/11
to RubyInstaller
On 7 Jan., 14:25, "Zeno R.R. Davatz" <zdav...@gmail.com> wrote:
> On 7 Jan., 14:03, Luis Lavena <luislav...@gmail.com> wrote:
>
> > Permission issues happen when you have antivirus software running or a
> > Windows explorer monitoring that folder (or any open editor or program
> > that might be locking the tree)
>
> Excellent that worked! Thank you very much!
>
> Now to the Oniguruma patch. Can I just wrap a recipe around the Linux-
> Oniguruma-Patch or will that not work? As I understand that will not
> work as simple as it worked with Cygwin.
>
> This is the Oniguruma Patch for Linux, Version 2.5.9.
>
> http://dev.ywesee.com/uploads/$PageName//Oniguruma_2.5.9_patch.txt
>
> All the files can be found here:http://dev.ywesee.com/uploads/%24PageName//oniguruma_patch_for_ruby-1...
>
> For Linux we normally use these steps to patch:
>
> $ tar zxvf ruby-1.8.6-p369.tar.gz
> $ tar zxvf oniguruma_patch_for_ruby-1.8.6_p369.20100615_from_Hannes-
> san.tar.gz
> $ cd oniguruma
> $ ./configure --with-rubydir=/home/masa/work/ruby-1.8.6-p369
> $ make 186
> $ cd /home/masa/work/ruby-1.8.6-p369
> $ ./configure --prefix=/home/masa/bin/ruby186
> $ make
> $ make install

Ok, from line 72 I added this:

patches = Dir.glob("#{package.patches}/*.patch").sort
patches.each do |patch|
sh "git apply --directory #{package.target} #{patch}"
end

in C:\Users\zdavatz\software\rubyinstaller\recipes\interpreter
\ruby18.rake

now I will run it ;)

Best
Zeno

Jon

unread,
Jan 7, 2011, 9:25:10 AM1/7/11
to rubyin...@googlegroups.com
> > Permission issues happen when you have antivirus software running or a
> > Windows explorer monitoring that folder (or any open editor or program
> > that might be locking the tree)

Also, disable Windows indexing for the build folders as it often causes frustrating random build failures.


> Now to the Oniguruma patch. Can I just wrap a recipe around the Linux-
> Oniguruma-Patch or will that not work? As I understand that will not
> work as simple as it worked with Cygwin.

Try the following first before you spend time building a recipe. If it works, it's your quickest solution I think.

WARNING...I haven't tried this as I don't use 1.8.x, but it's similar enough to how I do regular 1.9 and trunk builds from a local ruby git repo:

* download ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6-p369.tar.bz2 and extract it to somewhere, say c:\build\ruby
* apply your patches
* cd to <RUBYINSTALLER_BASE_DIR> and type the following...this _should_ cause the recipes to build from your patched 1.8.6-p369 version in c:\build\ruby rather than trying to download ruby

rake ruby18 dkver=mingw-32-3.4.5 local="C:\build\ruby"

Jon

---
http://jonforums.github.com/

Zeno R.R. Davatz

unread,
Jan 7, 2011, 10:02:23 AM1/7/11
to RubyInstaller
Ok this compiled without a single error! But now I need to confirm it.
This seems very suspicious to me. ;)

Where are the Ruby-Installer exe-files stored? I need to find that out
now.

All I done was put the patch to

C:\Users\zdavatz\software\rubyinstaller\resources\patches

in

oniguruma

as

0001-ruby186-oniguruma.patch

and edited the file

C:\Users\zdavatz\software\rubyinstaller\recipes\interpreter
\ruby18.rake

to include

patches = Dir.glob("#{package.patches}/*.patch").sort
patches.each do |patch|
sh "git apply --directory #{package.target} #{patch}"
end

from line 72.

Best
Zeno

Luis Lavena

unread,
Jan 7, 2011, 10:27:31 AM1/7/11
to rubyin...@googlegroups.com
On Fri, Jan 7, 2011 at 12:02 PM, Zeno R.R. Davatz <zda...@gmail.com> wrote:

Hello,

Don't want to be a jerk, but a patch for a specific patchlevel will
not apply to latest.

At minimum I recommend you read RubyInstaller's README for
instructions, better yet, read the code to understand what is doing.

Also, all this trouble and seems you're very anxious, why not try oniguruma gem?

https://rubygems.org/gems/oniguruma

Gordon already mentioned that before and you ignored and insisted on
the patch-path.

At least provide an answer of "tried that didn't work"...

Zeno R.R. Davatz

unread,
Jan 7, 2011, 10:49:05 AM1/7/11
to RubyInstaller
On 7 Jan., 16:27, Luis Lavena <luislav...@gmail.com> wrote:

> At minimum I recommend you read RubyInstaller's README for
> instructions, better yet, read the code to understand what is doing.

That is why I need help and I am willing to pay for it.

> Also, all this trouble and seems you're very anxious, why not try oniguruma gem?

Because we need Ruby 1.8.6 and the gem does not work for us. We tested
that.

> https://rubygems.org/gems/oniguruma
>
> Gordon already mentioned that before and you ignored and insisted on
> the patch-path.

We need Regexp-lookbehind.

The simple reason is: Our software runs on Linux with Ruby-1.8.6 with
the Oniguruma-Patch. We are not using the gem because it does not work
in Linux for us.

We use the patch on Linux, we need it on Windows because we want to
install the same gem on Windows.

I want some consistency in our Apps, cross-plattform.

Best
Zeno

Luis Lavena

unread,
Jan 7, 2011, 11:02:46 AM1/7/11
to rubyin...@googlegroups.com
On Fri, Jan 7, 2011 at 12:49 PM, Zeno R.R. Davatz <zda...@gmail.com> wrote:
>
> Because we need Ruby 1.8.6 and the gem does not work for us. We tested
> that.
>

Can I ask why? Doesn't install, doesn't contain what are you
requiring? Can you be more specific?

>> https://rubygems.org/gems/oniguruma
>>
>> Gordon already mentioned that before and you ignored and insisted on
>> the patch-path.
>
> We need Regexp-lookbehind.
>

I believe that is what the gem provides.

> The simple reason is: Our software runs on Linux with Ruby-1.8.6 with
> the Oniguruma-Patch. We are not using the gem because it does not work
> in Linux for us.
>

Did you install oniguruma library dependency? Asking all this because
if is not clear for you how the patching works, we are going to be in
a thread of 200 messages without any real progress...

> I want some consistency in our Apps, cross-plattform.
>

Consistency can be achieved differently, the patched version of Ruby
seems too brittle from my point of view.

Zeno R.R. Davatz

unread,
Jan 7, 2011, 11:29:29 AM1/7/11
to RubyInstaller
Dear Jon

Thank you for your help.

On 7 Jan., 15:25, Jon <jon.for...@gmail.com> wrote:
> Also, disable Windows indexing for the build folders as it often causes frustrating random build failures.

Done. Thanks for the hint.

> Try the following first before you spend time building a recipe. If it works, it's your quickest solution I think.
> * downloadftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6-p369.tar.bz2and extract it to somewhere, say c:\build\ruby

Done.

> * apply your patches

Ok, this is where the problem obviously starts. I can not run

cd oniguruma
./configure --with-rubydir=C:\build\ruby\ruby-1.8.6-p369
make 186

I can not even do the configure on Windows. Sorry, I am a Linux guy.
But I am willing to pay for any professional help for my lack of
Windows experience.

> * cd to <RUBYINSTALLER_BASE_DIR> and type the following...this _should_ cause the recipes to build from your patched 1.8.6-p369 version in c:\build\ruby rather than trying to download ruby
>
> rake ruby18 dkver=mingw-32-3.4.5 local="C:\build\ruby"

Thanks I am gonna try that, hopefully soon.

Best
Zeno

Zeno R.R. Davatz

unread,
Jan 7, 2011, 11:35:48 AM1/7/11
to RubyInstaller
On 7 Jan., 17:02, Luis Lavena <luislav...@gmail.com> wrote:
> On Fri, Jan 7, 2011 at 12:49 PM, Zeno R.R. Davatz <zdav...@gmail.com> wrote:

> Can I ask why? Doesn't install, doesn't contain what are you
> requiring? Can you be more specific?

Our Application does not start up with the oniguruma gem. Our code has
lots of legacy, we started in 2003. It is a big application. We are in
process of porting to 1.9 but that will still take some time, trust
me.

> Did you install oniguruma library dependency? Asking all this because
> if is not clear for you how the patching works, we are going to be in
> a thread of 200 messages without any real progress...

No, because the patch works fine on Linux.

> > I want some consistency in our Apps, cross-plattform.
>
> Consistency can be achieved differently, the patched version of Ruby
> seems too brittle from my point of view.

It works perfectly well on Linux and on Cygwin with Windows. We have
millions of users on our App every year. It works perfectly well on
Linux. No brittle there.

Best
Zeno

Luis Lavena

unread,
Jan 7, 2011, 11:52:50 AM1/7/11
to rubyin...@googlegroups.com
On Fri, Jan 7, 2011 at 1:35 PM, Zeno R.R. Davatz <zda...@gmail.com> wrote:
> On 7 Jan., 17:02, Luis Lavena <luislav...@gmail.com> wrote:
>> On Fri, Jan 7, 2011 at 12:49 PM, Zeno R.R. Davatz <zdav...@gmail.com> wrote:
>
>> Can I ask why? Doesn't install, doesn't contain what are you
>> requiring? Can you be more specific?
>
> Our Application does not start up with the oniguruma gem. Our code has
> lots of legacy, we started in 2003. It is a big application. We are in
> process of porting to 1.9 but that will still take some time, trust
> me.
>

I don't trust myself, asked politely because most of the times the
complicated path can be solved more simpler.

>> Did you install oniguruma library dependency? Asking all this because
>> if is not clear for you how the patching works, we are going to be in
>> a thread of 200 messages without any real progress...
>
> No, because the patch works fine on Linux.
>

I just looked in the massive patch file you provided, and is not clear
how to get that working.

Your request for help is not very convincing for me as is not clear
(sounds convoluted).

If you can provide, in a logical fashion the steps you (or one of your
developers/co-workers) did for this special Ruby compilation, I could
take a look to it.

But, just to clarify:

* You can extract Ruby into any folder (any version of Ruby)
* You can apply the patch yourself to it (however that is done)
* Then you can compile ruby with "rake ruby18
LOCAL=C:\Path\To\Your\Patched\Ruby"

Zeno R.R. Davatz

unread,
Jan 7, 2011, 12:11:49 PM1/7/11
to RubyInstaller
On 7 Jan., 17:52, Luis Lavena <luislav...@gmail.com> wrote:

> I just looked in the massive patch file you provided, and is not clear
> how to get that working.

;) - that is why I am asking for help for windows.

Download these files:

http://dev.ywesee.com/uploads/$PageName//oniguruma_patch_for_ruby-1.8.6_p369.20100615_from_Hannes-san.tar.gz

extract them and look at the following files:

re.c.184.patch
ruby186.patch

and look at both makefiles for a) Linux and that b) in the subfolder
of win32.

As mentioned I can apply the patch with Cygwin on Windows. Same steps
as on Linux. See the link below.

Now I would like to do the same with mingw on Windows and create a
wonderful one-click installer for Windows for Ruby-1.8.6 with the
Oniguruma-Patch compiled in.

> Your request for help is not very convincing for me as is not clear
> (sounds convoluted).

I am trying my best.

> If you can provide, in a logical fashion the steps you (or one of your
> developers/co-workers) did for this special Ruby compilation, I could
> take a look to it.

This is how it is done on Linux:

http://dev.ywesee.com/wiki.php/Masa/20100907-install-ruby#oniguruma

Thank you for your help so far.

Best
Zeno

Luis Lavena

unread,
Jan 7, 2011, 1:17:00 PM1/7/11
to rubyin...@googlegroups.com
On Fri, Jan 7, 2011 at 2:11 PM, Zeno R.R. Davatz <zda...@gmail.com> wrote:
>
> extract them and look at the following files:
>
> re.c.184.patch
> ruby186.patch
>

These patches are svn patches, we no longer bundle with patch utiltiy
and instead we use git apply to avoid UAC warnings.

If you transform these patches to git diff format, git apply should work.

>
> http://dev.ywesee.com/wiki.php/Masa/20100907-install-ruby#oniguruma
>

Following these instructions can work too, you just need a few steps before:

the make 186 will need to be modified to do "git apply" instead of
patch, as patch is not integrated OR download patch for windows:

http://gnuwin32.sourceforge.net/packages/patch.htm

Then:

rake ruby18:dependencies devkit:sh

That should give you a bash shell where you can apply the patches, etc.

This onigumura patch/hack is tricky, worked on Linux because you have
installed all your dependencies before, but on Windows, there is no
dependency (zlib or any other is not bundled with the OS), so
RubyInstaller have recipes for that.

I can't help you further as this tricky thing is time consuming and
time is something I lack right now.

To generate the installers and compile you're pretty close, you just
need read the code and time and patience (which for the flood of
emails looks like you're running out).

Hope above helps you.

Zeno R.R. Davatz

unread,
Jan 8, 2011, 4:38:15 AM1/8/11
to RubyInstaller
Dear Luis

Thanks for the reply.

What I do not understand yet is:

1. What is the win32 directory in the oniguruma directory for?

2. Can I apply the Linux Patch on Windows with the tools you mentioned
above? Should that be possible? If so, what is the win32 directory for
then?

Once this is clear for me, I guess we are a large step ahead.

Best
Zeno

Zeno R.R. Davatz

unread,
Jan 8, 2011, 5:19:21 AM1/8/11
to RubyInstaller
Dear Jon

On 7 Jan., 15:25, Jon <jon.for...@gmail.com> wrote:

> Try the following first before you spend time building a recipe. If it works, it's your quickest solution I think.

> * downloadftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6-p369.tar.bz2and extract it to somewhere, say c:\build\ruby
> * apply your patches

This I done doing

cd C:\build\ruby\ruby-1.8.6-p369
patch < ../oniguruma/ruby186.patch (the same patch-file I use for
Linux)

I did not get any output, but I assume the patch was applied, as I
also did not get any errors. Should I get any output from patch on
Windows if I apply a patch as above?

> * cd to <RUBYINSTALLER_BASE_DIR> and type the following...this _should_ cause the recipes to build from your patched 1.8.6-p369 version in c:\build\ruby rather than trying to download ruby

then I done

cd C:\Users\zdavatz\software\rubyinstaller
rake ruby18 dkver=mingw-32-3.4.5 local="C:\build\ruby\ruby-1.8.6-p369"

now configure and make are running. I will keep you posted.

;)

Best
Zeno

Zeno R.R. Davatz

unread,
Jan 8, 2011, 5:31:24 AM1/8/11
to RubyInstaller
Dear Luis

On 7 Jan., 19:17, Luis Lavena <luislav...@gmail.com> wrote:

I downloaded

> http://gnuwin32.sourceforge.net/packages/patch.htm

and done

cd C:\Users\zdavatz\software\rubyinstaller
rake ruby18:dependencies devkit:sh

that resulted in

sh-3.1$

then I wanted to do

patch < ../oniguruma/ruby186.patch

but that command just hangs and nothing happens in sh-3.1$

When I tried it Jon's way I got no output but the command did not hang
and finished with no error but also no output. After that I could
compile with Jons suggestion

rake ruby18 dkver=mingw-32-3.4.5 local="C:\build\ruby\ruby-1.8.6-p369"

and it finished clean.

So now my questions are:

1. Was the patch applied with Jon's version?
2. If yes, where is the Ruby executable and how can I install it on my
Windows?

Best
Zeno

Zeno R.R. Davatz

unread,
Jan 8, 2011, 5:37:10 AM1/8/11
to RubyInstaller
Dear Jon

On 8 Jan., 11:19, "Zeno R.R. Davatz" <zdav...@gmail.com> wrote:

> On 7 Jan., 15:25, Jon <jon.for...@gmail.com> wrote:
>
> > Try the following first before you spend time building a recipe. If it works, it's your quickest solution I think.
> > * downloadftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6-p369.tar.bz2andextract it to somewhere, say c:\build\ruby
> > * apply your patches
>
> This I done doing
>
> cd C:\build\ruby\ruby-1.8.6-p369
> patch < ../oniguruma/ruby186.patch (the same patch-file I use for
> Linux)
>
> I did not get any output, but I assume the patch was applied, as I
> also did not get any errors. Should I get any output from patch on
> Windows if I apply a patch as above?
>
> > * cd to <RUBYINSTALLER_BASE_DIR> and type the following...this _should_ cause the recipes to build from your patched 1.8.6-p369 version in c:\build\ruby rather than trying to download ruby
>
> then I done
>
> cd C:\Users\zdavatz\software\rubyinstaller
> rake ruby18 dkver=mingw-32-3.4.5 local="C:\build\ruby\ruby-1.8.6-p369"
>
> now configure and make are running. I will keep you posted.

This compiled completely clean!?! I assume it worked. Will check back
later.

Thanks so far for your help!

Best
Zeno

Jon

unread,
Jan 8, 2011, 11:09:29 AM1/8/11
to rubyin...@googlegroups.com
> > then I done
> >
> > cd C:\Users\zdavatz\software\rubyinstaller
> > rake ruby18 dkver=mingw-32-3.4.5 local="C:\build\ruby\ruby-1.8.6-p369"
> >
> > now configure and make are running. I will keep you posted.
>
> This compiled completely clean!?! I assume it worked. Will check back
> later.

Ensure you've got Inno http://www.innosetup.com/isdl.php installed, both isetup and ispack (only need the pre-processor installed from ispack) if you want to build the .exe installer. Looks like you may be close :)

Jon

---
http://jonforums.github.com/

Zeno R.R. Davatz

unread,
Jan 8, 2011, 12:27:31 PM1/8/11
to RubyInstaller
Dear Jon

Thanks for the hint!

On 8 Jan., 17:09, Jon <jon.for...@gmail.com> wrote:

> Ensure you've got Inno http://www.innosetup.com/isdl.phpinstalled, both isetup and ispack (only need the pre-processor installed from ispack) if you want to build the .exe installer.  Looks like you may be close :)

I got both ispack and isetup installed. Now what do I do to create my
Ruby-1.8.6-p369-oniguruma.exe Installer? I am back to reading the FAQ.

https://github.com/oneclick/rubyinstaller/wiki/FAQ/97ea5fdf2103446a99a9aee2bbfe52bee7714e3f

;)

Thanks for your help so far.

Best
Zeno

Luis Lavena

unread,
Jan 8, 2011, 12:49:20 PM1/8/11
to rubyin...@googlegroups.com
On Sat, Jan 8, 2011 at 2:27 PM, Zeno R.R. Davatz <zda...@gmail.com> wrote:
> Dear Jon
>
> Thanks for the hint!
>
> On 8 Jan., 17:09, Jon <jon.for...@gmail.com> wrote:
>
>> Ensure you've got Inno http://www.innosetup.com/isdl.phpinstalled, both isetup and ispack (only need the pre-processor installed from ispack) if you want to build the .exe installer.  Looks like you may be close :)
>
> I got both ispack and isetup installed. Now what do I do to create my
> Ruby-1.8.6-p369-oniguruma.exe Installer? I am back to reading the FAQ.
>

Have you tested that the ruby actually contains the patch and is working?

Asking this because the "make 186" from the onigumura download copies
a lot of files, not just the patch files.

Once you test that you can create the executable with "rake
ruby18:package RELEASE=onigumura"

Again, as mentioned before, I don't recommend creating the installer
or even distribute them. I would recommend you take
sandbox/ruby18_mingw (where Ruby was compiled) and compress it with
7zip or WinZip and distribute internally in your company.

Building installers that could be distributed in the wild and
installed by others will bring lot of folks with questions since
menus, shortcuts and instructions of the installer points to
RubyInstaller (since you haven't mention you modified them).

Zeno R.R. Davatz

unread,
Jan 8, 2011, 1:09:42 PM1/8/11
to RubyInstaller
Dear Luis

On 8 Jan., 18:49, Luis Lavena <luislav...@gmail.com> wrote:

> Have you tested that the ruby actually contains the patch and is working?

This is the main question ;) how do I test it? This said I still do
not know what the difference between

ruby18_mingw

and

ruby18_build

is. If I run

C:\Users\zdavatz\software\rubyinstaller\sandbox\ruby18_mingw
\bin>ruby.exe

it does show me the right version.

ruby 1.8.6 (2009-06-08 patchlevel 369) [i386-mingw32]

But what I need to do now is start up my application that is a gem and
it is in

C:\Ruby186\lib\ruby\gems\1.8\gems\de.oddb-2.0.0\bin\oddbd

and I have a lot of other gems that are in

C:\Ruby186\lib\ruby\gems\1.8\gems

that I need for oddbd start up to work.

So how do I tell ruby to take the gems that I installed in

C:\Ruby186\lib\ruby\gems\1.8\gems\

but my new Ruby-Oniguruma-Version that is now installed in

C:\Program Files\Ruby_1.8.6-p369-oniguruma\ruby.exe

Sorry, this I do not understand yet. Also it would be nice if I could
add Rubygems to my installer as well or distribute my Ruby-Executable
in a way that uses the RubyInstaller but just replaces the Ruby-
Version with the patched Oniguruma-Version.

> Asking this because the "make 186" from the onigumura download copies
> a lot of files, not just the patch files.

Sure I am very curious myself as well.

> Once you test that you can create the executable with "rake
> ruby18:package RELEASE=onigumura"

Ok, will do.

> Again, as mentioned before, I don't recommend creating the installer
> or even distribute them. I would recommend you take
> sandbox/ruby18_mingw (where Ruby was compiled) and compress it with
> 7zip or WinZip and distribute internally in your company.

Yes, sounds very reasonable. But first I need to know that it works.

> Building installers that could be distributed in the wild and
> installed by others will bring lot of folks with questions since
> menus, shortcuts and instructions of the installer points to
> RubyInstaller (since you haven't mention you modified them).

I am not quite there yet. ;) - but I will not distribute anything that
will trouble you. I will double-check that with you.

Best
Zeno

Luis Lavena

unread,
Jan 8, 2011, 1:17:25 PM1/8/11
to rubyin...@googlegroups.com
On Sat, Jan 8, 2011 at 3:09 PM, Zeno R.R. Davatz <zda...@gmail.com> wrote:
> Dear Luis
>
> On 8 Jan., 18:49, Luis Lavena <luislav...@gmail.com> wrote:
>
>> Have you tested that the ruby actually contains the patch and is working?
>
> This is the main question ;) how do I test it? This said I still do
> not know what the difference between
>
> ruby18_mingw
>
> and
>
> ruby18_build
>

ruby18_build is where the configure and make process of Ruby is held.
ruby_1_8 contains the extracted source code of the ruby package you
donwloaded and where patches should have been applied.

ruby18_mingw is the target of "make install" and is a standalone
portable version of the Ruby as distributed in the official
installers.

Everything that is in that folder should work on any other computer as
long 'bin' directory is in the PATH.

>
> But what I need to do now is start up my application that is a gem and
> it is in
>
> C:\Ruby186\lib\ruby\gems\1.8\gems\de.oddb-2.0.0\bin\oddbd
>
> and I have a lot of other gems that are in
>
> C:\Ruby186\lib\ruby\gems\1.8\gems
>
> that I need for oddbd start up to work.
>

You need to consider ruby18_mingw a *new* Ruby installation and
install the gems into it, do not copy things from your existing
installation as things are different and will not prove that this
version of Ruby works as expected.

>
> but my new Ruby-Oniguruma-Version that is now installed in
>
> C:\Program Files\Ruby_1.8.6-p369-oniguruma\ruby.exe
>

I have no idea why you installed inside Program Files. RubyInstaller
installer script do not select program files, and dunno why you
selected it.

>
>> Again, as mentioned before, I don't recommend creating the installer
>> or even distribute them. I would recommend you take
>> sandbox/ruby18_mingw (where Ruby was compiled) and compress it with
>> 7zip or WinZip and distribute internally in your company.
>
> Yes, sounds very reasonable. But first I need to know that it works.
>

So copy ruby18_mingw into a different folder (C:\Ruby186-Mine) and add
C:\Ruby186-Mine\bin to the PATH and install gems and your application
into it.

Zeno R.R. Davatz

unread,
Jan 8, 2011, 1:32:11 PM1/8/11