Ubuntu rails не удалось установить на zlib
Я только что перешел на Ubuntu 8.10 в качестве своего окна разработки; это мой первый серьезный набег на Linux как на повседневную операционную систему, и мне трудно начинать работу Rails. Я следовал нескольким учебникам, которые, кажется, все работают нормально, но когда я пытаюсь использовать gem install или gem update для чего-либо, я получаю ошибку, которая выглядит следующим образом:
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- zlib (LoadError)
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:1
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/commands/update_command.rb:5
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:167:in `load_and_instantiate'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:88:in `[]'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:144:in `find_command'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:131:in `process_args'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:102:in `run'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/gem_runner.rb:58:in `run'
from /usr/local/bin/gem:21
У меня (как рекомендовано в учебниках) установлены zlib, zlib1g и zlib1g-dev. Я даже нашел несколько учебных пособий по этой конкретной проблеме (однако, для всех вкусов, отличных от моих), но они не помогли.
Я на Ubuntu 8.10, ruby версия 1.8.8dev gem версия 1.3.2
Я пытался переустановить ruby и gems каждый и отдельно, но безрезультатно.
13 ответов
Если вы столкнулись с этим вопросом, пытаясь установить Ruby с помощью Ruby Version Manager (RVM) в Ubuntu 10.04, то есть инструкции по установке zlib на веб-сайте rvm http://rvm.beginrescueend.com/packages/zlib/
Шаги:
rvm pkg install zlib
(или же
rvm package install zlib
если вы получите "ОШИБКА: нераспознанный аргумент командной строки:" pkg "" - более старые версии rvm использовали вместо этого глагол "пакет")
затем
rvm remove 1.9.1
rvm install 1.9.1
Я использую Ubuntu 10.04 (Lucid), я хотел установить ruby 1.9.2, потому что 1.9.1 не рекомендуется с Rails. Поэтому я скачал исходный код для 1.9.2 и разархивировал / разархивировал его. мой исходный дистрибутив - ruby-1.9.2-p0. После распаковки я собрал zlib следующим образом:
cd ruby-1.9.2-p0/ext/zlib
ruby extconf.rb
make
sudo make install
sudo gem install rails
это решило проблему. Это похоже на то, что другие люди опубликовали выше, но не совсем так, поэтому я подумал, что я также могу опубликовать именно то, что я сделал, чтобы все заработало.
У меня та же проблема в CentOS и исправить ее, выполнив следующую команду:
Во-первых, я гарантирую, что zlib и zlib-devel существуют (как многие предложили выше).
yum install zlib zlib-devel
Во-вторых, я перекомпилировал и установил исходники zlib, поставляемые с ruby.
cd /home/myname/installers/ruby-1.8.7-p174/ext/zlib/
ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/lib
make
make install
Это команды, кажется, решить проблему, тогда я выполняю gem update --system
и ошибка с zlib исчезла. Затем я устанавливаю рельсы с помощью gem install rails. Обратите внимание, что я уже устанавливал gem, и после перекомпиляции и установки zlib я не перекомпилирую и не устанавливаю gem (на самом деле я не знал, как его удалить, потому что не нашел для этого сценария)
Это работает для меня... надеюсь, что вы.
С уважением.
Пытаться
aptitude install zlib1g-dev
Тогда займись своими делами.
Мне действительно не понравился ни один из этих ответов... ни один из них не был сфокусирован на реальных потребностях и вопросах пользователей... просто люди рассказывали, что они сделали... без контекста, и это даже не сработало для меня...
Так,..
Я устанавливаю новую коробку Ubuntu 8.04 LTS 64-bit ...
Так что я...
cd ~
wget ftp://ftp.ruby-lang.org//pub/ruby/1.9/ruby-1.9.2-p180.tar.gz
tar -xvvf ruby-1.9.2-p180.tar.gz
cd ruby-*
./configure
make
install
sudo make install
И тогда у меня есть эта проблема с...
gem list
это не работает... что-то о zLib не найден дерьмо...
Итак, я действительно ЧИТАЮ README и нахожу, что мне нужно отредактировать файл...
[my ruby source directory]/ext/Setup
и UN-КОММЕНТАРИЙ строки с zLib в нем..., удаляя "#" в первом столбце
Затем я снова запускаю команды... включенные сюда для справки...
./configure
make
install
sudo make install
и все хорошо... это логично... и лишено "rvm" и прочего... "просто установите больше вещей, чтобы заставить его работать" решения типа.
Joet
Просто перейдите на пакет исходного кода Ruby, распакуйте его.
Перейти / ваш-ruby-dir/ext/zlib
ruby extconf.rb
make
sudo make install
Если пакеты отсутствуют, вам сообщат, в основном, связанные с libzlib пакеты
С уважением
Саурабх
rvm package install zlib
rvm remove 1.9.1
rvm install 1.9.1
Это сделал это. Я рад, что после многочисленных погонь за дикими гусями я нашел эту страницу.
Да, и это тоже не сработало. Получил это от другого источника, это наконец сделало это для меня, где другие вещи потерпели неудачу.
wget http://www.blue.sky.or.jp/atelier/ruby/ruby-zlib-0.6.0.tar.gz
tar xvzf ruby-zlib-0.6.0.tar.gz
cd ruby-zlib-0.6.0
ruby extconf.rb && make
sudo make install
Переустановите рубиновые камни из источника
В любом случае, ребята, спасибо.
На Debian (Squeeze):
libruby содержит zlib для ruby среди всего прочего, что вам нужно для правильной работы ruby в Debian. Так...
apt-get install libruby
Затем...
cd /usr/local/src/ruby
make clean
make
make install
cd ../rubygems
ruby setup.rb
gem install rails
Это заставило меня работать, но ваш пробег может отличаться. Я сделал легкий подход к дробовику, пока не обнаружил, что все необходимое покрыто либруби.
Проблема в том, что Ruby в Ubuntu не построен на zlib; вы хотите сделать сборку исходного кода для установки Ruby. Вы можете сделать это с apt-get source -b ruby
Вы пробовали установить apt-get libzlib-ruby?
Также установите rubygems из rubyforge. Мне не нравится пакет rubygems в Ubuntu.
При запуске Rails я бы не рекомендовал использовать Ruby 1.8.8dev. Придерживайтесь 1.8.6, предпочтительно Ruby Enterprise Edition. Посмотрите этот пост на RailsLab, что используют другие люди.
Если вы настаиваете на высоких технологиях, установите Ruby 1.9.1.
Но в обоих случаях постройте его сами или воспользуйтесь предложением Маранса.