I have ROS-Melodic installed on my Ubuntu 18.04. It comes with python2.7 by default. And I installed python3.8 using the following steps by mistake -
wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz
tar xzf Python-3.8.0
cd Python-3.8.0
sudo ./configure --enable-optimizations
sudo make altinstall
sudo apt update
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
sudo make altinstall
After that, whatever I install or update on my terminal, it gives me Unmet Dependencies error -
$ sudo apt-get update && sudo apt-get upgrade
Hit:1 http://mirrors.piconets.webwerks.in/ubuntu-mirror/ubuntu bionic InRelease
Hit:2 http://mirrors.piconets.webwerks.in/ubuntu-mirror/ubuntu bionic-updates InRelease
Hit:3 https://download.docker.com/linux/ubuntu bionic InRelease
Hit:4 http://mirrors.piconets.webwerks.in/ubuntu-mirror/ubuntu bionic-backports InRelease
Hit:5 http://mirrors.piconets.webwerks.in/ubuntu-mirror/ubuntu bionic-security InRelease
Hit:6 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu bionic InRelease
Hit:7 http://dl.google.com/linux/chrome/deb stable InRelease
Hit:8 http://dl.winehq.org/wine-builds/ubuntu bionic InRelease
Hit:9 http://ppa.launchpad.net/fingerprint/fingerprint-gui/ubuntu bionic InRelease
Hit:10 https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/xUbuntu_18.04 ./ InRelease
Hit:11 http://ppa.launchpad.net/micahflee/ppa/ubuntu bionic InRelease
Hit:12 http://ppa.launchpad.net/openshot.developers/ppa/ubuntu bionic InRelease
Hit:13 http://packages.ros.org/ros/ubuntu bionic InRelease
Hit:14 http://wiki.jderobot.org/apt bionic InRelease
Reading package lists... Done
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
bzr : Depends: python:any
cython : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
googletest : Depends: python:any
libboost-mpi-python1.65.1 : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
mercurial : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7~)
mercurial-common : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-all : Depends: python (= 2.7.15~rc1-1) but 3.8.0-1 is installed
python-all-dev : Depends: python (= 2.7.15~rc1-1) but 3.8.0-1 is installed
python-asn1crypto : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-attr : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-autobahn : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-automat : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-backports.functools-lru-cache : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-bzrlib : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (>= 2.6.6-7~)
python-cairo : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-catkin-pkg : Depends: python (< 2.8) but 3.8.0-1 is installed
python-catkin-pkg-modules : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (>= 2.6.6-7~)
python-cbor : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-cffi-backend : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7~)
python-chardet : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-click : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-colorama : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-concurrent.futures : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-configobj : Depends: python (< 2.8) but 3.8.0-1 is installed
python-constantly : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-crypto : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-cryptography : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-cycler : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-dateutil : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-dbus : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-defusedxml : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-dev : Depends: python (= 2.7.15~rc1-1) but 3.8.0-1 is installed
python-docutils : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-empy : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-enum34 : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-gi : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-gnupg : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-gobject-2 : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-gtk2 : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (>= 2.6.6-7~)
python-httplib2 : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-hyperlink : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-idna : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-incremental : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-ipaddress : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-keyring : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-keyrings.alt : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-launchpadlib : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-lazr.restfulclient : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-lazr.uri : Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
python-yaml : Depends: python (< 2.8) but 3.8.0-1 is installed
Depends: python:any (< 2.8)
Depends: python:any (>= 2.7.5-5~)
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
Any idea on how to solve this python versions conflict? Any help is really appreciated.
Sometimes it happens that when installing ros dependencies for python3 some of the original ros packages gets removed. Normally the terminal gives a prompt " that the following packages will be removed " before removing them. But most people will not notice the prompt before installation and misses out.
Running installation command for ROS again is the solution as in following commands.
sudo apt-get install ros-melodic-desktop-full --fix-missing
You can try with the following commands while using python3 along with python2.7 which comes with ROS.
sudo apt-get install python3-rospkg*
sudo apt-get update --fix-missing
sudo dpkg --configure -a
sudo apt-get install -f
sudo apt update
# install ros again as some packages are removed while installing python3-rospkg*
sudo apt-get install ros-melodic-desktop-full --fix-missing
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.