Неудовлетворенные зависимости для полного рабочего стола ros

ошибка

Я пытаюсь установить полную версию ros desktop на свой компьютер, выполнив следующие действия. Все в порядке до шага 1.4, точно

sudo apt-get install ros-kinetic-desktop-full

Где мне дают следующую ошибку:

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
 ros-kinetic-desktop-full : Depends: ros-kinetic-desktop but it is not going to be installed
       Depends: ros-kinetic-simulators but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Дерево зависимостей

Я сообщу здесь все дерево зависимостей, где я использовал команду sudo apt-get install для всех зависимостей слева от каждого элемента списка. Сначала я проследил зависимость симуляторов:

  • ros-kinetic-desktop-full: Зависит от: ro-kinetic-simulator
  • ros-kinetic-simators: Зависит от: ros-kinetic-rqt-common-plugins
  • ros-kinetic-rqt-common-plugins: Зависит от: ros-kinetic-rqt-web
  • ros-kinetic-rqt-web: Зависит от: ros-kinetic-webkit-зависимость
  • ros-kinetic-webkit-dependency: Зависит от: python-pyqt5.qtwebkit
  • python-pyqt5.qtwebkit: Зависит от: python-pyqt5 (= 5.8.2+dfsg-1+16.04+xenial+build19), но 5.8.2+dfsg-1+16.04+xenial+build21 должен быть установлен E: невозможно исправить проблемы, вы держали сломанные пакеты.

Затем я следовал за зависимостью рабочего стола:

  • ros-kinetic-desktop: Зависит от: ros-kinetic-viz
  • ros-kinetic-viz: Зависит от: ros-kinetic-rqt-common-plugins
  • ros-kinetic-rqt-common-plugins: Зависит от: ros-kinetic-rqt-web
  • ros-kinetic-rqt-web: Зависит от: ros-kinetic-webkit-зависимость
  • ros-kinetic-webkit-dependency: Зависит от: python-pyqt5.qtwebkit
  • python-pyqt5.qtwebkit: Зависит от: python-pyqt5 (= 5.8.2+dfsg-1+16.04+xenial+build19), но 5.8.2+dfsg-1+16.04+xenial+build21 должен быть установлен E: невозможно исправить проблемы, вы держали сломанные пакеты.

Как вы можете видеть, оба указывают на один и тот же пакет. Но при использовании

 sudo apt-get install python-pyqt5

я получил

python-pyqt5 уже является самой новой версией (5.8.2+dfsg-1+16.04+xenial+build21).

Что я пробовал

  1. Вручную добавив следующую deb в /etc/apt/sources.list

    deb http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse  
    deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse  
    deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse  
    deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse  
    deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse  
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse  
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse  
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse  
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse  
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse  
    
  2. Установка python-pyqt5 с pip3 install pyqt5

  3. Использование обновления, обновления, dist-update несколько раз с apt

  4. Установка ros-kinetic-ros-base, который не дал мне ошибок зависимостей

  5. С помощью sudo apt-get install python-pyqt5=5.8.2+dfsg-1+16.04+xenial+build19Дает следующий вывод перед принятием установки:

    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Starting pkgProblemResolver with broken count: 1
    Starting 2 pkgProblemResolver with broken count: 1
    Investigating (0) python-pyqt5.qtsvg [ amd64 ] < 5.8.2+dfsg-1+16.04+xenial+build21 > ( python )
    Broken python-pyqt5.qtsvg:amd64 Depends on python-pyqt5 [ amd64 ] < 5.8.2+dfsg-1+16.04+xenial+build21 -> 5.8.2+dfsg-1+16.04+xenial+build19 | 5.8.2+dfsg-1+16.04+xenial+build21 > ( python )(= 5.8.2+dfsg-1+16.04+xenial+build21)
    Considering python-pyqt5:amd64 10002 as a solution to python-pyqt5.qtsvg:amd64 1
    Removing python-pyqt5.qtsvg:amd64 rather than change python-pyqt5:amd64
    Investigating (0) ros-kinetic-python-qt-binding [ amd64 ] < 0.3.3-0xenial-20171104-175930-0800 > ( misc )
    Broken ros-kinetic-python-qt-binding:amd64 Depends on python-pyqt5.qtsvg [ amd64 ] < 5.8.2+dfsg-1+16.04+xenial+build21 > ( python )
    Considering python-pyqt5.qtsvg:amd64 1 as a solution to ros-kinetic-python-qt-binding:amd64 0
    Removing ros-kinetic-python-qt-binding:amd64 rather than change python-pyqt5.qtsvg:amd64
    Investigating (0) ros-kinetic-rviz [ amd64 ] < 1.12.15-0xenial-20180105-172609-0800 > ( misc )
    Broken ros-kinetic-rviz:amd64 Depends on ros-kinetic-python-qt-binding [ amd64 ] < 0.3.3-0xenial-20171104-175930-0800 > ( misc )
    Considering ros-kinetic-python-qt-binding:amd64 0 as a solution to ros-kinetic-rviz:amd64 -1
    Removing ros-kinetic-rviz:amd64 rather than change ros-kinetic-python-qt-binding:amd64
    Done
    Suggested packages:
       python-pyqt5-dbg
    The following packages will be REMOVED:
       python-pyqt5.qtsvg ros-kinetic-python-qt-binding ros-kinetic-rviz
    The following packages will be DOWNGRADED:
       python-pyqt5
    0 upgraded, 0 newly installed, 1 downgraded, 3 to remove and 0 not upgraded.
    Need to get 2.143 kB of archives
    

Больше информации

У меня установлена KDE neon LTS 5.8 со следующими характеристиками:

  • Плазменная версия KDE: 5.8.8
  • Версия KDE Frameworks: 5.42.0
  • Версия Qt: 5.7.1
  • Версия ядра: 4.13.0-29-generic
  • Тип ОС: 64-битная

Здесь я перечислю каждую команду, которая, по моему мнению, может быть полезной, с последующим выводом:

$ cat /etc/apt/sources.list.d/ros-latest.list 
deb http://packages.ros.org/ros/ubuntu xenial main

$ uname -a
Linux Ublion16 4.13.0-26-generic #29~16.04.2-Ubuntu SMP Tue Jan 9 22:00:44 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

$ apt-cache policy python-pyqt5
 python-pyqt5:
 Installed: 5.8.2+dfsg-1+16.04+xenial+build21
 Candidate: 5.8.2+dfsg-1+16.04+xenial+build21
 Version table:
 *** 5.8.2+dfsg-1+16.04+xenial+build21 500
        500 http://archive.neon.kde.org/user/lts xenial/main amd64 Packages
        100 /var/lib/dpkg/status
     5.8.2+dfsg-1+16.04+xenial+build19 500
        500 http://archive.neon.kde.org/user/lts xenial/main amd64 Packages
     5.8.2+dfsg-1+16.04+xenial+build13 500
        500 http://archive.neon.kde.org/user/lts xenial/main amd64 Packages
     5.7+dfsg-3+16.04+build8 500
        500 http://archive.neon.kde.org/user/lts xenial/main amd64 Packages
     5.5.1+dfsg-3ubuntu4 500
        500 http://it.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
        500 http://mirrors.ustc.edu.cn/ubuntu xenial/universe amd64 Packages

2 ответа

Я только что столкнулся с проблемой, очень похожей на вашу, но я решил ее, добавив

deb http://cz.archive.ubuntu.com/ubuntu xenial main universe 

руководителю /etc/apt/sources.list. Обратите внимание на "xenial" слово в этом предложении, оно должно совпадать с вашей версией Ubuntu. Если это не сработает, я советую сначала удалить /etc/apt/sources.list.d/ros-latest.list и повторить попытку.

Добавьте следующие источники пакетов в /etc/apt/sources.list.

deb http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse

deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse

deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse

deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse

deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse

deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse

deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse

deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse

deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse

deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse

Теперь выполните следующие действия из 1.2 в этой ссылке

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