Installing Ruby 1.8.7 (and other stuff) manually - windows

I don't want to rely on the one-click installer any more, and I want to learn how to install Ruby manually. Is there a resource for this?

Download the Windows binaries for Ruby 1.8.7 here: http://www.ruby-lang.org/en/downloads/. Extract that to wherever you would like; I use C:\ruby. Then put C:\ruby\bin in your PATH environment variable.
Download the zlib package: http://www.zlib.net/zlib123-dll.zip and extract the zlib1.dll, rename it to zlib.dll and move it into your Windows\System32.
Download the iconv package: http://sourceforge.net/project/showfiles.php?group_id=25167&package_id=51458. Find and extract the iconv.dll file into your Windows\System32.
Download the rubygems package and follow the instructions, basically extracting the package and running ruby setup.rb.
Verify that everything works properly by trying a gem install rails, once that installs then do: rails test_project

Well, if you're on a Mac I'd recommend MacPorts. There's a good post on it here that's still valid.
If you're on Windows and don't want to use the one-click installer you can install Cygwin and build ruby through it. Here's a post I found.

I'd start with the one-click installer, probably by taking a good look inside the source on RubyForge (disclaimer, I haven't actually done this...). These guys clearly know how to build Ruby on Windows from source, so I'd be inclined to see how they did it.
Beyond that, did you know you can download the 1.8.7 Windows binary from the ruby-lang.org downloads page? That page also has the current stable 1.8.7 source

You might also need libeay32.dll and ssleay32.dll, found in OpenSSL: http://www.slproweb.com/products/Win32OpenSSL.html

I've pretty much concluded that Ruby 1.8.7 just isn't stable yet for Windows. I was able to get it running on one Vista machine following the instructions above but not my laptop.
For the laptop I followed the following steps and everything seems to be working so far:
Install 1.8.6 using the 1-click
installer. Let it delete old copies
of Ruby if necessary.
Install gems 1.3.4
gem install rails
ruby script\console
point browser to http://localhost:3000/. Make sure everything works as expected
stop console
extract 1.8.7 zip file into the Ruby 1.8.6 directory
copy dll files discussed above into the ruby/bin directory
restart console and again check http://localhost:3000/
I would only follow these directions as a last resort if the instructions above don't work.
Before you wag a finger at me and scold me for this approach...
please consider that I spent ~8 hours reading and trying everything possible and was able to use the approach above successfully on another computer. I'm open to other suggestions!

If you are looking for a place to get all those DLL files - here is a trick: If you install the Ruby one-click-installer for Ruby 1.8.6, it has all of those DLL files in C:\ruby1.8.6\bin (assuming you installed it there).
I was playing with the PIK gem (rvm for Windows) and ran into that problem for Ruby 1.9.1 and after copying those DLL files everything worked perfectly.
Of course, those DLL files are somewhat old, so if Ruby 1.9.1 or 1.8.7 relies on any new features in those DLL files there might be a potential for a bug, but I haven't noticed anything so far and it beats hunting down them on the Internet.

Related

How to install Ruby Installer in Azure Websites

I'm using SASS in my application and i'm in the process of migrating to Azure.
I've got my project setup but it's not compiling the SASS. I'm trying to use the Ruby Installer from here http://rubyinstaller.org/downloads/ (Ruby 1.9.3-p551) and I've uploaded this via FTP to D:/home however when I try to install it simply using the command rubyinstaller-1.9.3-p551.exe it doesn't do anything. No error message or anything either.
Any suggestions?
Using the installer won't work because it probably requires an interactive session. What I did was get the Ruby binaries and FTP those to the website. You can find the binaries as as 7zip file on Ruby download page. I followed along this post: Installing Ruby 1.8.7 (and other stuff) manually. The part about zlib is probably outdated because there is a corresponding dll in the zipped archive already. I did download the other mentioned dll though (the iconv dll) and placed it in the Ruby bin folder.
Gem is already bundled in the package so no need to install that separately.
Unfortunately now I'm having difficulties in getting the gulp task to work because it is still saying "ruby and compass must be installed and in path". I set the path in the gulpfile.
You no longer need to depend on Ruby to compile your SASS.
LIBSASS has 100% parity with RUBY SASS, and doesn't come with the Ruby dependency.
If you're using grunt, you can switch over to LIBSASS by editing your gruntfile.js to use
grunt.loadNpmTasks('grunt-sass');
instead of
grunt.loadNpmTasks('grunt-contrib-sass');
You should also update your package.json file accordingly.
You can then get Azure to execute your grunt tasks as explained in this answer.

How to install ruby 2.1.2 on windows?

I didn't get any windows installer to install ruby 2.1.2. The only resource I found is a tar/zip file that is available at https://www.ruby-lang.org/en/downloads/.
I have no idea how to install this , anyone provide some suggestions how to install 2.1.2 version of ruby.
I have been able to crack the zlib nut (for Windows 8.1 -- see below), but I'm still struggling with openssl, readline, etc... I find it amazing that this documentation does not seem to be easily found, and that some experts/respondents advise using the 2.0 installer without considering that users are fighting this fight because we need the 2.1.2 functionality.
I downloaded zlib128-dll.zip from http://zlib.net and unzipped the contents to a directory (e.g., c:\zlib).
Then following some hints from this post (https://www.ruby-forum.com/topic/4421852), I created these dirs off of my c:\ruby-build\usr directory:
zlib
zlib\include
zlib\lib
Then I copied some files from my C:\zlib directories to my c:\ruby-build\usr directories:
*.h files (both) from C:\zlib\include to c:\ruby-build\usr\zlib\include
zdll.lib from C:\zlib\lib to c:\ruby-build\usr\zlib\lib.
zlib1.dll *AS* zlib.dll from C:\zlib to both c:\ruby-build\usr\zlib\lib and c:\ruby-build\usr\bin
(not sure which one or both are necessary).
Then from a VS 2012 Native Tools Command Window, I naviagted to C:\ruby-2.1.2\ext\zlib and executed:
\ruby-build\usr\bin\ruby extconf.rb --with-zlib-dir=c:/ruby-build/usr/zlib
Then nmake, followed by nmake install, and voila, I zlib was finally installed.
Let me know if you any questions about my steps.
The project Ruby Installer has published Ruby 2.1.3 for Windows (32 and 64 bits versions) on their download page:
http://rubyinstaller.org/downloads/
You will also find there a new build for Ruby 2.0 (p576).
Although they didn´t updated their news page yet.
The standard way to install Ruby on Windows is with Ruby Installer. However, due to some bugs/regressions in Ruby, there has been some hold up creating an installer for Ruby 2.1 on Windows. To get Ruby 2.1 on Windows, you'll likely have to compile from source.
That's a good question. It seems that 2.1.2 is not easily available on bitnami or ruby installer.
Check this out.
If it's not worth the pain or if you don't explicitly need the features of 2.1.2, I would recommend just installing 2.0.x's stable release.
Please let me know if you have any questions!

How to access svn repo using ruby in svn_wc

I am using svn_wc.
It gives err as no such file to load -- svn/core (LoadError)
what to do?
The above answer is a link only answer and can become useless when the link is dead. Dumping the link contents here -
SVN 1.5.1 / Ruby bindings on Windows
Rather than messing around with compiling swig bindings etc:
Download the ruby bindings from the svn site: (http://subversion.tigris.org/files/documents/15/43245/svn-win32-1.5.1_rb.zip)
From the zip - copy ruby\lib\svn into c:\ruby\lib\ruby\site_ruby\1.8\svn
From the zip – copy ruby\ext\svn\ext into c:\ruby\lib\ruby\site_ruby\1.8\svn\ext
copy libeay32.dll and ssleay32.dll from your subversion 1.5 directory into c:\ruby\bin
run irb and test with: require ‘svn/core’
Where can I find updated binaries? I've looked around on the
Subversion site, but there seems to be no link.
They are available on the subversion site here: svn-win32-1.5.5_rb.zip
If you go to the subversion site and select windows binaries for
apache 2.2 you will see the list.
I just over-wrote the two DLL files (libeay32 and ssleay32) that came
with my ruby 1.8.6 installation with the two that came with my svn
1.5.5 installation. (Yes, I saved the originals.)This was necessary to passing the "require 'svn/core'" test, but is this likely to have
broken something within ruby?
Hey Ramon, i'd hope not but you never know :) The dll's are OpenSSL
libraries so if you see any weird behaviour when using any ssl related
functionality in ruby, that'd probably be the culprit
Ruby can't find svn/core in your installation, if you look at the github page for svn_wc the requirements are listed as:
Requires that the Subversion (SWIG) Ruby Bindings are installed
Which is much easier to do on Linux and OSX than on Windows

Can't get ffi-rzmq zeromq gem working on Windows

I've having trouble getting the ffi-rzmq gem to work on windows.
I've installed the windows installer for ZeroMQ 2.2 from here:
http://www.zeromq.org/distro:microsoft-windows
And I've added C:\Program Files\ZeroMQ 2.2.0\bin to my PATH variable.
I then installed the ffi and ffi-rzmq gems with
gem install ffi
gem install ffi-rzmq
But when I start an irb and run:
require 'ffi-rzmq'
I get this message:
irb(main):001:0> require 'ffi-rzmq'
Unable to load this gem. The libzmq library (or DLL) could not be found.
If this is a Windows platform, make sure libzmq.dll is on the PATH.
For non-Windows platforms, make sure libzmq is located in this search path:
["C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/ffi-rzmq-0.9.3/lib/ffi-rz
mq/../../ext/libzmq.dll", "/usr/local/lib/libzmq.dll", "/opt/local/lib/libzmq.dl
l", "/usr/local/homebrew/lib/libzmq.dll", "/usr/lib64/libzmq.dll"]
The weird thing is that the Zero MQ installer doesn't seem to package a libzmq.dll, only libzmq-v100-mt.dll
I'm sure I'm doing something very obvious that's wrong, but I can't see what it is... can anyone help?
Thanks.
I've managed to fix the problem - the error message given by ffi-rzmq has actually improved somewhat in the latest version.
Nathan was right that I had to rename the libzmq-v100-mt.dll to libzmq.dll, but that alone wasn't enough - I was using the 64bit compiled version of ZMQ, but for some reason ffi-rzmq is linked against the 32bit version.
So everything worked once I uninstalled the 64bit version, installed the 32bit version instead, reanamed the dll to libzmq.dll and adjusted my path to point to the 'c:\program files (x86)' version of zmq.
You have to rename libzmq-v100-mt.dll to libzmq.dll - I have no idea why they decided to have the windows build output a different library name.
I had the same problem, and as soon as I renamed the file zeromq started working fine.
(Okay, technically I had to fix my code first, but THEN zeromq worked fine).

How do I uninstall ruby from my cygwin installation

My cygwin installation contains the following ruby binaries, how can I uninstall these binaries since I would like to use ruby 192 on my windows vista machine
ruby.exe
rubyw.exe
To uninstall any package on Cygwin, run setup-x86.exe or setup-x86_64.exe (which you should already have, or you can get them here), select "ruby" under "interpreters", click the round arrow icon until it says "Uninstall", then continue. This will remove the executables and libraries and take care of any dependencies. You could remove the files directly, but that might leave the system in an inconsistent state, and you might miss something.
Cygwin doesn't seem to have Ruby 1.9.2 yet, unfortunately (NOTE: I wrote this several years ago and I'm not currently able to check). How do you intend to install it? If you're going to install a pure Windows (non-Cygwin) version of ruby, you may not need to uninstall the Cygwin version. For example, I have both Cygwin Perl and ActiveState Perl on my Windows 7 system; I use one from the Cygwin environment, the other from the Windows environment.
Or I suppose you could build ruby 1.9.2 from source under Cygwin; in that case, yes, you would want to uninstall the Cygwin ruby installation first.
(As I write this update, the latest version of Ruby is 2.3.2.)
http://www.ruby-lang.org/en/downloads/ has more information about ways to install ruby (but nothing specific about Cygwin).
I have tried what says in Cygwin docs:
2.18.
How do I uninstall individual packages?
Run Cygwin Setup as you would to install packages. In the list of
packages to install, browse the relevant category or click on the
View'' button to get a full listing. Click on the cycle glyph until
the action readsUninstall''. Proceed by clicking ``Next''.
But it did not work, I did it for "All Users" and for "My User" when running Setup.
So I finally repeated the process but without checking "Select required packages(RECOMMENDED)" and that time it worked. Now:
$ ruby -v
-bash: ruby: command not found
As last step I deleted the .gem file in my home Cygwin folder.
As an alternative, you can use RVM (Ruby Version Manager) to install Ruby 1.9.2 while keeping your current version available. You'll need to have curl, git, automake and mingw to install and compile Ruby.

Resources