Unmet dependencies for ros desktop full
Same Question
I have posted this exact same question on AskUbuntu here.
Error
I'm trying to install the ros desktop full version on my pc following these steps. Everything is all right until step 1.4, precisely
sudo apt-get install ros-kinetic-desktop-full
Where i'm given the following error:
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.
Dependency tree
I'll report here the whole dependency tree, where i used the command sudo apt-get install
for all the dependencies on the left of each list element.
I followed first the simulators dependency:
- ros-kinetic-desktop-full : Depends: ros-kinetic-simulators
- ros-kinetic-simulators : Depends: ros-kinetic-rqt-common-plugins
- ros-kinetic-rqt-common-plugins : Depends: ros-kinetic-rqt-web
- ros-kinetic-rqt-web : Depends: ros-kinetic-webkit-dependency
- ros-kinetic-webkit-dependency : Depends: python-pyqt5.qtwebkit
- python-pyqt5.qtwebkit : Depends: python-pyqt5 (= 5.8.2+dfsg-1+16.04+xenial+build19) but 5.8.2+dfsg-1+16.04+xenial+build21 is to be installed E: Unable to correct problems, you have held broken packages.
Then i followed the desktop dependency:
- ros-kinetic-desktop : Depends: ros-kinetic-viz
- ros-kinetic-viz : Depends: ros-kinetic-rqt-common-plugins
- ros-kinetic-rqt-common-plugins : Depends: ros-kinetic-rqt-web
- ros-kinetic-rqt-web : Depends: ros-kinetic-webkit-dependency
- ros-kinetic-webkit-dependency : Depends: python-pyqt5.qtwebkit
- python-pyqt5.qtwebkit : Depends: python-pyqt5 (= 5.8.2+dfsg-1+16.04+xenial+build19) but 5.8.2+dfsg-1+16.04+xenial+build21 is to be installed E: Unable to correct problems, you have held broken packages.
As you can see both point to the same package. But when using
sudo apt-get install python-pyqt5
I get
python-pyqt5 is already the newest version (5.8.2+dfsg-1+16.04+xenial+build21).
What I've tried
Manually adding the following deb to /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
Installing python-pyqt5 with
pip3 install pyqt5
Using upgrade, update, dist-update multiple times with apt
Installing
ros-kinetic-ros-base
, which gave me no dependencies errorsUsing
sudo apt-get install python-pyqt5=5.8.2+dfsg-1+16.04+xenial+build19
Gives the following output before accepting installation:Reading package lists... Done Building dependency tree Reading state information... Done Starting pkgProblemResolver with ...
One possibility is that you have a PPA (or other pkg repository) that offers a newer (and incompatible) version of
python-pyqt5.qtwebkit
, which is why things aren't installing. Try to figure out where your currentpython-pyqt5.qtwebkit
is coming from.Please don't do that. You now have multiple versions of Python
pyqt5
on your system, one of which is probably not managed by your system's package manager, but is interfering with the Ubuntu provided one.Also: Python 3 is not used by ROS.
Hi @gvdhoorn, thanks for your response. The error is stating that i need the 5.8.2+dfsg-1+16.04+xenial+build19 of python-pyqt5 but i have the t 5.8.2+dfsg-1+16.04+xenial+build21 , could it be the thing you're talking about? How and where can I check the build version location?
See what the output of
apt-cache policy python-pyqt5
is.Add it to your original question (use the
edit
button/link).@gvdhoorn done, the build version is still the wrong one
From the output of
apt-cache policy
you appear to have a repository (archive.neon.kde.org
) that provides that newer version. Do you know why you have that repository?I'm not entirely sure, but it could well be that this is causing the conflict you're seeing.
I forgot to specify that my machine is running KDE neon LTS 5.8.8, i think that is the default repository @gvdhoorn
Well, then it could be that having both installed is not possible, if indeed the different version of
python-pyqt5
is the problem here. If neon pins the version ofpython-pyqt5
to that specific version, and the ROS pkgs pin it to the other one, than that would be a problem.