Рейтинг:3

Ошибки зависимостей для любой подходящей команды

флаг ro

При попытке установить или удалить пакеты я сталкиваюсь с ошибкой, связанной с cuda.

Например, установка curl (который я уже установил):

sudo apt установить завиток
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
curl уже самая новая версия (7.58.0-2ubuntu3.16).
Возможно, вы захотите запустить «apt --fix-broken install», чтобы исправить это.
Следующие пакеты имеют неудовлетворенные зависимости:
 cuda-libraries-dev-10-2 : зависит: libcublas-dev (>= 10.2.2.89), но он не будет установлен
 cuda-samples-10-2 : зависит: libcublas-dev (>= 10.2.2.89), но он не будет установлен
 cuda-visual-tools-10-2 : зависит: libcublas-dev (>= 10.2.2.89), но он не будет установлен
E: Неудовлетворенные зависимости. Попробуйте «apt --fix-broken install» без пакетов (или укажите решение).

При выполнении этого с пакетом, который еще не установлен, он также дает те же самые отсутствующие зависимости (libcublas-dev) и не устанавливается.

Любая помощь?

Изменить: Попытка sudo apt --fix-сломанная установка выдает аналогичную ошибку:

Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Исправление зависимостей... Готово
Будут установлены следующие дополнительные пакеты:
  libcublas-dev
Будут установлены следующие НОВЫЕ пакеты:
  libcublas-dev
0 обновлено, 1 установлено заново, 0 удалено и 613 не обновлено.
7 не полностью установлен или удален.
Нужно получить 0 Б/42,3 МБ архивов.
После этой операции будет использовано 114 МБ дополнительного места на диске.
Вы хотите продолжить? [Да/нет] г 
Получить:1 файл:/var/cuda-repo-10-2-local-10.2.89-440.40 libcublas-dev 10.2.2.89-1 [42,3 МБ]
dpkg: предупреждение: файл списка файлов для пакета cuda-libraries-10-2 отсутствует; предполагая, что в настоящее время в пакете нет установленных файлов
(Чтение базы данных... На данный момент установлено 466055 файлов и каталогов.)
Подготовка к распаковке .../libcublas-dev_10.2.2.89-1_amd64.deb ...
Распаковка libcublas-dev (10.2.2.89-1)...
dpkg: ошибка обработки архива /var/cuda-repo-10-2-local-10.2.89-440.40/./libcublas-dev_10.2.2.89-1_amd64.deb (--unpack):
 попытка перезаписать '/usr/include/cublas_v2.h', который также находится в пакете nvidia-cuda-dev:amd64 10.0.130-0lambda3
dpkg-deb: ошибка: подпроцесс вставки был остановлен сигналом (сломан канал)
При обработке возникли ошибки:
 /var/cuda-repo-10-2-local-10.2.89-440.40/./libcublas-dev_10.2.2.89-1_amd64.deb
E: Подпроцесс /usr/bin/dpkg возвратил код ошибки (1)
cocomac avatar
флаг cn
Попробуйте выполнить `sudo apt-get update && sudo apt-get install curl` и посмотрите, работает ли это правильно.
Kyle Carow avatar
флаг ro
@cocomac Все еще получаю ту же ошибку, что и выше.
ScarletNyaa avatar
флаг jp
На всякий случай, вносили ли вы какие-либо изменения в свой файл /etc/apt/sources.list?
user535733 avatar
флаг cn
Похоже, вы пытались установить Cuda несколькими способами и не выполнили очистку между попытками. Таким образом, у вас есть конфликтующие пакеты, циркулирующие вокруг такой работы, а программные продукты — нет. Если это действительно то, что произошло, вернитесь и очистите. Отслеживайте, что именно вы устанавливаете, когда и почему — это значительно упрощает очистку.
Kyle Carow avatar
флаг ro
@ user535733 Спасибо за понимание - эта машина использовалась несколькими людьми, что вполне вероятно. Как мне это исправить?
Рейтинг:2
флаг cn

Начните с ключевой строки ошибки:

dpkg: ошибка обработки архива /var/cuda-repo-10-2-local-10.2.89-440.40/./libcublas-dev_10.2.2.89-1_amd64.deb (--unpack):
 попытка перезаписать '/usr/include/cublas_v2.h', который также находится в пакете nvidia-cuda-dev:amd64 10.0.130-0lambda3

Давайте немного разберем это:

dpkg: ошибка обработки ПАКЕТА A:
 пытается перезаписать ФАЙЛ, который также находится в ПАКЕТЕ B

ПАКЕТ A = libcublas-dev:amd64 10.2.2.89-1
ПАКЕТ B = nvidia-cuda-dev:amd64 10.0.130-0lambda3
ФАЙЛ = /usr/include/cublas_v2.h

Первая проблема: Пакет А и Пакет Б пытаются предоставить один и тот же файл. Это означает, что пакеты конфликт. Этот конфликт и является причиной ошибки.

Вторая проблема: посмотрите на номера версий каждого пакета... они не совпадают. Они, вероятно, должны.

  • Вы - администратор-человек - должны решить, какая версия подходит для вашей системы.

Взгляни на подходящая политика кэширования для обоих этих пакетов. Если посылки приходят из разные источники, это, наверное, плохо.

  • Если у вас есть несколько источников, вы — администратор-человек — должны решить, какой источник предоставляет подходящие пакеты для вашей системы.

Чтобы решить проблему, вы должны принять два решения (в пунктах выше). Затем вы должны реализовать свои решения:

  1. Отключите или удалите конфликтующие или нежелательные источники. Они тебе все равно не помогут.

  2. Удалите конфликтующие пакеты или пакеты неправильной версии.

Также можно использовать быстрый и грязный --force-перезаписать флаг с apt, чтобы сообщение об ошибке исчезло. Однако я не рекомендую этого... на самом деле это не решает основную проблему смешанных источников, предоставляющих пакеты неправильной версии, которые могут когда-нибудь полностью сломать Cuda.

Ответить или комментировать

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