When I try to run even simple rails commands such as:
rails -h
I get a popup error after a few seconds that says:
ruby.exe - Unable To Locate Component
This application has failed to start
because msvcrt-ruby18.dll was not
found. Re-installing the application
may fix the problem.
I am running:
Windows XP (yes I know I should attempt ruby on a Windows machine).
Ruby 1.9.1p378 [i386-mingw32].
Have updated all my gems to latest versions (as of 14-July-2010).
Is there a way I can test what is making this error? Does anyone know what it could mean?
I have found that in my ruby19/bin folder there is msvcrt-ruby191.dll but there is no msvcrt-ruby18.dll anywhere. Why would it be looking for this anyway if I'm using ruby 1.9?
The current release version 1.1.5 of Mongrel is incompatible with Ruby 1.9 and throws this error when it is run. It's easy to solve - just make sure Rubygems is up-to-date:
gem update --system
Then install the new pre-release version of Mongrel:
gem install mongrel --pre
Alternatively, if this isn't caused by Mongrel, you can try installing the DevKit, then try this:
gem install *gemname* --platform=ruby
This forces compilation of the extension from source using DevKit and works with most of the major gems I've tried.
Ruby 1.9.1 was running well on my Windows XP PC, but I've got this error message after installing mongrel. Unfortunately, mongrel has no update for Ruby 1.9.1 yet. Perhaps, for this reason, it generates this error on my PC.
JRuby might work better for you. Either way, trying to use Ruby on Windows will leave a bad taste in your mouth. Either get a VM with Linux to work with it, or pay $10/mo for a VPS where you can play.
you got the binary version of the gem, which only includes binaries for 1.8
try gem install mongrel --platform=ruby --pre
To solved msvcrt-ruby.dll error
Install DevKit ( https://github.com/oneclick/rubyinstaller/wiki/Development-Kit )
> gem uninstall json
> gem install json
Related
I'm quite new to Ruby in general and especially RoR, so tell me if I need to add more information.
Upon running sudo gem install rails (after a long delay) I receive the following error message:
ERROR: While executing gem ... (Gem::RemoteFetcher::UnknownHostError)
no such name (https://api.rubygems.org/quick/Marshal.4.8/mime-types-1.17.2.gemspec.rz)
I entered the link and it downloaded something, so I tried again - not entirely surprisingly, I got the same error.
I'm running OSX 10.7.5 and I've installed XCode 4.6.3 as well as the command line tools. I've installed Ruby 2.1.0 so I know I have that up to date. I thought the error might have something to do with sudo typically running whatever came with the machine, but if that's true, wouldn't it give me an error saying I needed a version of Ruby >= 1.9.3?
To be perfectly clear what I'm asking: why will Rails not install under the above conditions, and how can this be remedied?
Edit: I ran the command yet another time and this time it worked, and I don't know why it didn't before or what made it work now. As a note for anyone who should care, I do have RVM installed and used it to install Ruby.
OS X comes with ruby 1.8.x
My guess is that you are still defaulting to that version and not the 2.1 you have installed.
I would recommend installing RVM or equivalent so that you can shift from system 1.8.x to your 2.1 (or else as you can manage several versions of ruby and rails with RVM)
I would recommend against installing rails as root. I ran into this issue where
ruby -v
returned ruby 2.1.0 and
sudo ruby -v
returned ruby 1.9.1
Every time I tried to run
gem install rails
I kept getting errors as a result. I'm not familiar with Mac's package manager but this is what worked for me on ubuntu
sudo apt-get remove ruby1.9.1
then
sudo ruby -v
should return command not found. Then installing rails worked fine
gem install rails
These were the directions I followed. The main problem was I had already installed ruby prior to running(I think heroku toolbelt did it).
https://www.digitalocean.com/community/articles/how-to-install-ruby-on-rails-on-ubuntu-12-04-lts-precise-pangolin-with-rvm
I've been working with Rails a while now, and want to setup a local VM'd server. For some reason, I keep running into errors while trying to install Rails on Ubuntu Server 11.10. Specifically, when running 'gem install rails', I get errors about not being able to build native extensions. Moreover, after I install Ruby, it says it's version 1.9.2, but after attempting to install Rails, it's telling me it's version 1.8.7... I'm at my wits end here, and Google isn't helping.
Can anyone give me a quick rundown of the commands to make this work, from Ruby installation onwards? It should be simple, but I'm obviously missing a step or two, and my Google Fu is failing me horribly. Any help would be greatly appreciated.
I will guess that you're having trouble installing the linecache19 gem. You need to get a copy of the ruby source and install the gem with
gem install ruby-debug19 -- --with-ruby-include=/path/to/ruby/source
You know, someone should fix this...
I am running ruby 1.9.2 p180 using rvm.
I tried to install rails:
sudo gem install rails
And I got this:
Successfully installed activerecord-3.1.3
Successfully installed activeresource-3.1.3
Successfully installed mail-2.3.0
Successfully installed actionmailer-3.1.3
Successfully installed rack-ssl-1.3.2
Successfully installed rdoc-3.12
Successfully installed railties-3.1.3
Successfully installed rails-3.1.3
22 gems installed
[BUG] cross-thread violation on rb_gc()
(null)
I was using 1.8.7 all this time, but wanted to try using 1.9.2 as that is where things seem to be moving and ran into this bug.
What could it be?
See the section "Bus Error / Segfault" in Troubleshooting RVM:
In every case of this I have seen thus far it has always ended up being that a ruby gem/library with C extensions was compiled against a different ruby and/or architecture than the one that is trying to load it. Try uninstalling & reinstalling gems with C extensions that your application uses to hunt this buggar down.
No guarantees that this is the problem, but ensure that all of your gems were compiled for the architecture you are running on (64-bit vs. 32-bit, for example). You didn't mention the platform/architecture in your post. If you are running OSX, see OSX, RubyGems and cross-thread violations in rb_gc, as well. Chances are you are picking up some of the 1.8.7 gems.
Why did you run sudo gem with RVM?
Have you tried:
rvm use rails-1.9.2-p180
gem install rails
under the folder you are creating the app you can also create a .rvmrc file with the ruby version you are running so everytime you ge into the folder you it would switch to the version set in the .rvmrc
sample:
rvm ruby-1.9.2-p180#myapp
I installed rubygems-1.7.2 but then out of some confusion with not being able to install rails when I ran this command:
gem install rails
and I got this error:
ERROR: Error installing rails:
bundler requires RubyGems version >= 1.3.6
That is a bit strange since the rubygems I have on my system is a much later version. Do I maybe need to configure it somehow so that my shell recognizes it? What is a step I might be missing to have this resolved?
I have
/usr/local/rubygems-1.7.2
was it supposed to get installed in a different directory or something?
Installing RVM made it unnecessary to install RubyGems separately...I think :)
I tried to install the new beta on my system with the command:
sudo gem install rails --pre
but no matter what I tried, I still get this damn error:
Successfully installed
rails-3.0.0.beta3 1 gem
installed Installing ri
documentation for
rails-3.0.0.beta3... File not
found: lib
Since I'm very new to ruby, I really don't know what to do.
How can I finish installing this?
Is this installed already?
Why does it abort here?
All you need to run is gem install rdoc, follow its instructions, then run the install rails command again and you're good. The problem is due to rdoc failing to install when installed with rails, if installed manually it works fine.
Source: http://gist.github.com/565967
^ I had the same problem, and this worked for me.
If you're looking to do ruby/rails development on Mac, I'd strongly recommend not using the version of ruby/rubygems shipped with your mac. What I do recommend is:
Installing homebrew and using that to manage software packages on your mac.
Install brewbygems, which makes homebrew play nice with rubygems: gem install brewbygems
Install rvm and learn to love the different versions of ruby and rvm's gemsets feature: gem install rvm
Once you've done that you'll have a pretty robust development environment and you should be able to install any version of rails without a problem. Just keep in mind rails 3 works best using ruby 1.9.2 (install with rvm by running rvm install ruby-head) and is still in beta, meaning it isn't terribly stable and should not be used for anything production grade (yet).
I found the same error message, while after some google I've successfully installed it by manually 'sudo mkdir lib' in the .../gems/rails-3.0.0.beta3. Though it hasn't raised further problem, I hope someone could tell what should be in the missing lib directory.
You don't really need to do this sudo gem install rails --pre, simply sudo gem install rails. Rails3 is the default package now and out of beta.
It should work fine.
Might be a different solution on your OS, but I got the same exact error in Ubuntu and creating a ¨lib¨ folder under the rails gem folder solved my problem. I have explained the solution in the following post:
Installing Rails: "File not found: lib"
For convenience I will copy it here as well. The solution:
mkdir /lib/ruby/gems/1.8/gems/rails-{whatever your version is}/lib
Explanation: The ¨[sudo] gem install rails¨ command expects the /lib folder (at the end) but for some reason it hasn´t been created yet.
The original source of this solution was the following URL. Hope it helps!
http://www.spritle.com/blogs/?p=915
Same problem with beta 4.
The workaround is sudo gem install rails --pre --no-ri --no-rdoc though I don't know why.