не удается загрузить такой файл-zlib даже после использования rvm pkg install zlib
я установил пакет zlib и ruby 1.9.3 с помощью rvm, но всякий раз, когда я пытаюсь установить
драгоценные камни он говорит
cannot load such file -- zlib
команды, которые я использовал для установки
$ rvm install 1.9.3
$ rvm pkg install zlib $ rvm reinstall 1.9.3 --with-readline-dir=/home/username/.rvm/usr --with-iconv-dir=/home/username/.rvm/usr --with-zlib-dir=/home/username/.rvm/usr --with-openssl-dir=/home/username/.rvm/usr $ rvm use 1.9.3 $ gem install heroku ERROR: Loading command: install (LoadError) cannot load such file -- zlib ERROR: While executing gem ... (NameError) uninitialized constant Gem::Commands::InstallCommand
вся помощь по этому вопросу говорит мне просто сделать rvm pkg install zlib
, и
затем переустановите ruby с помощью --with-zlib-dir=/home/username/.rvm/usr
, но это
не получилось.
6 ответов:
Я закончил установку zlib из apt-get, а затем переустановил ruby в не используйте каталог rvm для zlib.
вот как:
$ sudo apt-get install zlib1g-dev $ rvm reinstall 1.9.3
[Edit] как комментатор @chrisfinne упоминает, на системах на основе CentOS / RedHat:
$ sudo yum install zlib-devel $ rvm reinstall 1.9.3
оба других ответа были почти правильными...
The rvm сайт для zlib обеспечивает быстрое решение!
в верхней части страницы находится "быстрое исправление" следуйте инструкциям, это будет:
- исправить установку,
- предоставить вам инструкции, что делать, чтобы установить zlib из вашей системы
- и показать, как переустановить ruby
Ruby имеет кучу зависимостей от пакетов, таких как zlib-devel. Они неприятны, потому что нет ничего, чтобы указать, что вам нужна библиотека, пока не получите какое-то неясное сообщение об ошибке при попытке сделать что-то рутинное.
решение заключается в использовании РВМ. Использовать его, даже если вам нужна только одна версия Ruby. Зачем? Потому что тогда вы можете сделать
rvm requirements
это будет зондировать вашу конкретную ОС и производить набор команд, которые вы можете скопировать обратно в командную строку, чтобы установить недостающие пакеты.
используйте autolibs для установки зависимостей:
rvm autolibs enable rvm reinstall 1.9.3
RVM автоматически установит отсутствующие зависимости и использует их для компиляции ruby.
более подробную информацию о autolibs => http://rvm.io/rvm/autolibs
rvm pkg install openssl && rvm pkg install zlib && rvm pkg install libyaml && rvm pkg install iconv rvm install 1.9.3-p0 --with-opt-dir=$HOME/.rvm/usr \ --with-libxml2-dir=/usr/local/Cellar/libxml2/2.7.8 \ --with-readline-dir=/usr/local/Cellar/readline/6.2.1
решение, которое работало для меня, описано в RVM GitHub repo,выпуск #3389.
Run
rvm install 2.3.0 --with-zlib-dir=/usr/local/Cellar/zlib/1.2.8
Рубина 2.3.0 версия.