"IOError: invalid Python installation: unable to open /usr/lib/python2.7/config/Makefile" configuring python-minimal
Matthew Martinez
I updated Ubuntu from 17.04 to 17.10 and then to 18.04 and now my Python seems to be broken. Running apt-get upgrade returns the following errors:
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: libopencv-highgui3.1 : Depends: libopencv-videoio3.1 (= 3.1.0+dfsg1-1~exp1ubuntu3) but it is not installable Depends: libopencv-imgcodecs3.1 but it is not installable libopencv-videostab3.1 : Depends: libopencv-videoio3.1 but it is not installable libpython-all-dev : Depends: libpython-dev (= 2.7.14-2ubuntu1) but 2.7.15~rc1-1 is installed python : PreDepends: python-minimal (= 2.7.13-2) but 2.7.15~rc1-1 is installed Depends: libpython-stdlib (= 2.7.13-2) but 2.7.14-2ubuntu1 is installed python-all : Depends: python (= 2.7.15~rc1-1) but 2.7.13-2 is installed python-all-dev : Depends: python (= 2.7.15~rc1-1) but 2.7.13-2 is installed Depends: libpython-all-dev (= 2.7.15~rc1-1) but 2.7.14-2ubuntu1 is installed python-dev : Depends: python (= 2.7.15~rc1-1) but 2.7.13-2 is installed ubuntu-release-upgrader-core : Depends: python3-distupgrade (= 1:18.04.17) but 1:17.10.11 is installed ubuntu-release-upgrader-gtk : Depends: python3-distupgrade (= 1:18.04.17) but 1:17.10.11 is installed update-manager : Depends: update-manager-core (= 1:18.04.11) but 1:17.10.13 is installed Depends: libgtk3-perl but it is not installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).Running apt --fix-broken install results in the following error:
Setting up python-minimal (2.7.15~rc1-1) ...
Traceback (most recent call last): File "/usr/local/lib/python2.7/site.py", line 563, in <module> main() File "/usr/local/lib/python2.7/site.py", line 545, in main known_paths = addusersitepackages(known_paths) File "/usr/local/lib/python2.7/site.py", line 278, in addusersitepackages user_site = getusersitepackages() File "/usr/local/lib/python2.7/site.py", line 253, in getusersitepackages user_base = getuserbase() # this will also set USER_BASE File "/usr/local/lib/python2.7/site.py", line 243, in getuserbase USER_BASE = get_config_var('userbase') File "/usr/local/lib/python2.7/sysconfig.py", line 521, in get_config_var return get_config_vars().get(name) File "/usr/local/lib/python2.7/sysconfig.py", line 420, in get_config_vars _init_posix(_CONFIG_VARS) File "/usr/local/lib/python2.7/sysconfig.py", line 288, in _init_posix raise IOError(msg)
IOError: invalid Python installation: unable to open /usr/lib/python2.7/config/Makefile (No such file or directory)
dpkg: error processing package python-minimal (--configure): installed python-minimal package post-installation script subprocess returned error exit status 1
Errors were encountered while processing: python-minimal
E: Sub-process /usr/bin/dpkg returned an error code (1)Does someone have an idea on how to fix this?
21 Answer
I don't know why, but python2.7 pointed to /usr/local/bin/python2.7 which had version 2.7.3, while python pointed to /usr/bin/python2.7 which had version 2.7.15.
I simply renamed /usr/local/bin/python2.7 and now apt-get upgrade is working as expected.