Установка Ruby 2.6 в Ubuntu 18.04 - ошибка пути компоновщика - PullRequest
0 голосов
/ 18 апреля 2020

Я установил Ruby 2.6.6 в Ubuntu 18.04, используя следующие команды:

wget http://ftp.ruby-lang.org/pub/ruby/2.6/ruby-2.6.6.tar.gz
tar -xzvf ruby-2.6.6.tar.gz
cd ruby-2.6.6/
./configure
sudo make install

ruby -v подтверждает установку 2.6.6.

Но затем, когда я запускаю gem install bundler Я получаю сообщение об ошибке /usr/bin/gem: no such file or directory

Перед установкой Ruby 2.6.6 Я удалил версию 2.5 с помощью sudo apt-get purge ruby, поэтому мне интересно, нужно ли переконфигурировать пути. Я новичок в Ruby, поэтому я немного растерялся. Любое руководство, пожалуйста?

which ruby возвращает / usr / local / bin / ruby

Я нашел каталог gem в /usr/local/bin/gem как мне перенастроить путь к gem ссылка от /usr/bin/gem до /usr/local/bin/gem?

1 Ответ

2 голосов
/ 18 апреля 2020

Мое первое, хотя бы то, что путь к гему кэшируется (как кажется, /usr/local/bin находится в вашем PATH). Попробуйте перезапустить оболочку и проверьте это для получения более подробной информации: https://unix.stackexchange.com/questions/5609/how-do-i-clear-bashs-cache-of-paths-to-executables

Однако я думаю, что вы должны установить Ruby (и вообще любое другое программное обеспечение) из своих репозиториев дистрибутивов. В противном случае вы не будете получать обновления, и ваш менеджер пакетов может позже переопределить / сломать программное обеспечение (так как менеджер пакетов не знает об изменениях). Чтобы сделать это для Ruby:

sudo apt install ruby-full

Похоже, это установит Ruby 2.5.1. Проверьте packages.ubuntu для получения подробной информации.

Если вам нужно установить другую версию Ruby (например, 2.6), я рекомендую вам использовать Rbenv + ruby -build. Обратитесь к следующему руководству для получения более подробной информации о том, как установить Ruby в Ubuntu: https://linuxize.com/post/how-to-install-ruby-on-ubuntu-18-04

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...