Как установить пакет больше или равно определенной версии

Сценарий требует версию ruby, большую или равную 1.9. Как мне перевести это в команду apt? Пробовал ниже, не работает:

 % sudo apt-get install "ruby ( >= 1.9.1 )"
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package ruby ( >


 % sudo apt-get install "ruby>=1.9.1"      
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package ruby>
3
задан 19 May 2017 в 00:34

1 ответ

apt не поддерживает указание диапазонов версий для установки пакета. Вы можете либо указать точную версию, которую хотите использовать, либо не указывать версию, чтобы она приняла решение автоматически.

Чтобы узнать, какие версии пакета доступны для вас, будет полезен вывод

apt policy PACKAGENAME

, например, для ruby 16.04:

ruby:
  Installed: (none)
  Candidate: 1:2.3.0+1
  Version table:
     1:2.3.0+1 500
        500 http://ftp.uni-stuttgart.de/ubuntu xenial/main amd64 Packages
        500 http://ftp.uni-stuttgart.de/ubuntu xenial/main i386 Packages

Версия выше соответствует Ruby 2.3 между прочим.

Таким образом, в этом примере вы можете установить либо ruby, чтобы система автоматически выбирала единственную доступную версию, либо вы могли явно указать ее как ruby=1:2.3.0+1.

Команда для установки желаемого пакета будет одной из

sudo apt install PACKAGENAME
sudo apt install PACKAGENAME=VERSION
0
ответ дан 19 May 2017 в 00:34

Другие вопросы по тегам:

Похожие вопросы: