gem --version different to sudo gem --version :( - ruby-on-rails

I'm a bit of a Linux noob trying to get ruby, rails, mysql and sqlite all playing nicely on ubuntu 10. I am getting errors, and I realized that the versions are different for sudo versus normal user!
mpw#ubuntu:~/.rvm/gems/ruby-1.9.2-p0$ gem --version
1.3.7
mpw#ubuntu:~/.rvm/gems/ruby-1.9.2-p0$ sudo gem --version
1.3.5
I have used RVM to install it, but it seems that I have conflicting versions. How to fix?

I did the same installation mistake before, but following these instructions worked. http://ascarter.net/2010/05/10/rails-development-on-ubuntu-10.04.html

sudo gem --version most likely is using the system gem i.e the one you get when you do rvm system. This is because sudo changes user to root and you probably didn't do sudo rvm use 1.9.2 or something similar. Try doing sudo which gem and which gem to confirm this.
You can update the version used by root by doing sudo gem update --system. However note that you are still most likley using different gem paths when using sudo gem and gem if you are not using the system gem executable by default i.e rvm use system.

Please try a
sudo which gem
resp
which gem
to get the information which gem you are using.
I second the opinion of the answer above that most probably you are using different gem versions and paths.

Related

Can't install ruby on rails in ubuntu gnome 15.10

I am trying to install ruby on rails. I'm at version 2.3.0 for ruby and gem version of 2.5.1.
When I run the command gem install rails I get an error that says:
ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /usr/local/lib/ruby/gems/2.3.0 directory.
How can I fix this?
gem install tries to put files in "system-wide" directories. These are protected, such that only the root user can write into.
You have at least three possibilities:
sudo gem install ..., this will write the gem files into /usr/local/lib/ruby/gems/2.3.0
gem install --user-install, this will install the gem "locally" in your users home directory
apt-get install ruby-rails (not sure about the package name), which will install the ruby on rails version maintained by your distributions maintainers (Canonical).
install and use rvm or rbenv (and there might be other options). Afterwards gem install will usually just work and install the gems for your user only
While the rvm setup might be a tiny bit confusing for newbies, I recommend using that approach. It will make updating and installing ruby, gems and different versions of it really easy.

How to change gem package manager's version?

Currently I am having gem package manager version 2.0.14, I found it by running
gem -v
but how to downgrade the package manager to version 1.8.25. Every search attempt to find this leads me to, how to upgrading or downgrading a particular gem.
maybe you are referring to rvm?
rvm list
rvm use 2.0.0-p353 // just a sample version
Gem can be updated using:
gem update --system
or
sudo gem update --system
This may help you:
sudo gem update --system 1.8.25 # If you don't mention version then by default it will update with latest one
More information about downgrading/upgrading rubygems: http://rubygems.rubyforge.org/rubygems-update/UPGRADING_rdoc.html

Installing Rails ERROR: could not find rails locally or in a repository

I've been poking around the internet looking for a solution on this one... with no luck..
I'm new to rails... If anyone has an idea, I'd love to hear it. Much appreciated!
I enter:
LW:src liamwright$ sudo gem install rails --include-dependencies
And Get:
INFO: `gem install -y` is now default and will be removed
INFO: use --ignore-dependencies to install only the gems you list
Bulk updating Gem source index for: http://gems.rubyforge.org
ERROR: could not find rails locally or in a repository
I am running:
ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0]
Mac OS X 10.5.8
I also tried:
gem sources -r gems.rubyonrails.org
And Get:
source gems.rubyonrails.org not present in cache
Just to check...
...try doing a sudo gem update --system before installing Rails to make sure you have the latest RubyGems installed?
EDIT: Actually, if your RubyGems install is really old, you might need to follow the alternate directions on Gemcutter.
Might want to make sure you have the newest rubygems:
sudo gem install rubygems-update
sudo gem update --system
Then:
sudo gem install rails
I came across this solution on Albertux' blox. Running this script will fix it (It worked perfectly for me on an Ubuntu 9.10 machine):
#!/bin/bash
#(download the latest on http://rubyforge.org/frs/?group_id=126)
wget http://rubyforge.org/frs/download.php/43984/rubygems-update-1.3.0.gem
sudo gem install rubygems-update-1.3.0.gem
sudo update_rubygems
# now this work:
sudo gem update --system
echo "done."
I've just had the same problem trying to upgrade rubygems from 1.2.0 to 1.3.7.
Setp-1)
So I just downloaded rubygems-update-1.3.7.gem from http://rubyforge.org/frs/?group_id=126
Setp-2)
gem install rubygems-update-1.3.7.gem
Setp-3)
update_rubygems
and it work for me.

gem install error, index not found, ruby on rails

Problem: Cannot install any gem, any type. But I want to install riddle if that matters.
When I run sudo gem install "gem_name" I get the following error:
WARNING: RubyGems 1.2+ index not found for:
RubyGems will revert to legacy indexes degrading performance.
Bulk updating Gem source index for: http://gems.rubyforge.org/
What to do??
Check your sources
gem sources
rebuild index for affected sources, e.g.
gem generate_index http://gems.rubyforge.org
1) Here is the answer!!!!
- slow connection
2) Solution
- move to a new connection.
-
This might not affect people in the 1st world, but I live in China and this was a huge problem as few people seem to have experienced this.
Basically the error means that the connection is to slow and gives up saying no index found. But there is not documentation or help out there on this, except for a few posts about changing gem sources, and MERB causing problems, but all that failed for me.
I was having the same problem and ran the following:
gem env
And saw that I had the following sources in my rubygems configuration:
http://gems.rubyforge.org
http://gems.rubyonrails.org
http://gems.github.com
Based on other answers I've seen here and on the web I decided to remove the rubyonrails.org reference:
sudo gem sources -r http://gems.rubyonrails.org
I was then able to install the gem I was trying to get without the RubyGems 1.2+ index error.
So I'd suggest trimming your list of sources down to just rubyforge and github and then trying to install the gem you want.
I solved this problem by
rm -rf ~/.gem
And then run "gem install" again
Try to add the another gem source. For example github:
sudo gem sources -r http://gems.rubyforge.org
sudo gem sources -a http://gems.github.com
You are running an old RubyGems version.
Upgrade to the latest RubyGems 1.3.x branch.
$ rubygems update --self
If it doesn't work (RubyGems 1.2.0 has a weird bug that prevents --self update) then install rubygems_update
$ wget http://rubyforge.org/frs/download.php/60717/rubygems-update-1.3.5.gem
$ gem install rubygems-update-1.3.5.gem
$ update_rubygems
Use sudo if your os requires it.
Could be a daft entry in /etc/hosts...

Ubuntu: "Could not find rails locally or in a repository"

I'm following these instructions to set up Ruby on Rails on my Ubuntu machine. For now at least, I'm planning to use Mongrel.
When I get to this step:
sudo gem install rails
...I get this message:
Bulk updating Gem source index for: http://gems.rubyforge.org/
ERROR: could not find rails locally or in a repository
What should I do next?
I would try to update gems first. The latest version is 1.3.3. You can do this on Ubuntu by either:
sudo gem install rubygems-update
sudo update_rubygems
or
sudo gem install rubygems-update
cd /var/lib/gems/1.8/gems/rubygems-update-*
sudo ruby setup.rb
basically, try again!
It could be a serious error, but in earlier versions ( I encountered this about 1 year ago or so ) it happend on the first try and when trying again the gem would eventually be found. I think it had something to do with the servers performance or such.
Using a recent version of rubygems is probably a good idea, and if it really won't work you can always get the .gem file from sourceforge directly and install from it.
For example with the file rails-2.3.2.gem:
gem install rails-2.3.2 –local
gem install rails --source http://gems.rubyonrails.org

Resources