Могу ли я выполнить установку из исходного кода, если у меня уже есть пакет репозитория?

Могу ли я выполнить установку из исходного кода, если у меня уже есть пакет репозитория?

Я только что попытался установить Virtualbox из исходников на Ubuntu, но он не позволил мне это сделать, потому что у меня уже есть пакет репозитория. В идеале мне нужны обе версии. Возможно ли установить из исходников таким образом, чтобы обойти это ограничение?

Ниже приведено сообщение об ошибке после выполнения команды sudo dpkg -i в пакете deb:

Selecting previously unselected package virtualbox-5.1.
dpkg: regarding virtualbox-5.1_5.1.18-114002-Ubuntu-trusty_amd64.deb containing virtualbox-5.1:
 virtualbox-5.1 conflicts with virtualbox
  virtualbox-5.0 provides virtualbox and is present and installed.

dpkg: error processing archive virtualbox-5.1_5.1.18-114002-Ubuntu-trusty_amd64.deb (--install):
 conflicting packages - not installing virtualbox-5.1
Errors were encountered while processing:
 virtualbox-5.1_5.1.18-114002-Ubuntu-trusty_amd64.deb

решение1

Вы не можете установить две версии одного и того же пакета через менеджер пакетов. (Так работает APT — есть и другие менеджеры пакетов, которые работают по-другому.) Если вы попытаетесь установить вторую версию, она заменит старую.

С помощью APT можно установить несколько версий некоторых программ. Это делается путем добавления версии программы в имя пакета. Обычно это делается для библиотек, поскольку у вас может быть установлено несколько программ с использованием разных версий одной и той же библиотеки. Это на самом деле происходит с VirtualBox: вы пытаетесь установить virtualbox-5.1уже virtualbox-5.0установленную. Что касается имен пакетов, это возможно. Однако эти пакеты на самом деле не могут быть установлены вместе; метаданные пакета содержат информацию о конфликте, которая сообщает менеджеру пакетов не устанавливать их вместе. Даже если метаданные пакета не объявляли о конфликте, два пакета не могли быть установлены вместе, поскольку они предоставляют файлы с одинаковыми именами. Я не знаю, почему VirtualBox поставляется в пакетах, имена которых содержат версию программного обеспечения.

Если вы хотите установить несколько версий VirtualBox, вам придется устанавливать их из бинарного дистрибутива или из исходников, без использования менеджера пакетов. Другими словами, не устанавливайте deb-файл (за исключением, возможно, одной из версий).

Связанный контент