Пакет lsb-release сломан в 14.04

$ sudo apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up lsb-release (4.1+Debian11ubuntu6.1) ...
Traceback (most recent call last):
  File "/usr/bin/py3compile", line 290, in <module>
    main()
  File "/usr/bin/py3compile", line 270, in main
    options.force, options.optimize, e_patterns)
  File "/usr/bin/py3compile", line 156, in compile
    cfn = interpreter.cache_file(fn, version)
  File "/usr/share/python3/debpython/interpreter.py", line 212, in cache_file
    (fname[:-3], self.magic_tag(version), last_char))
  File "/usr/share/python3/debpython/interpreter.py", line 246, in magic_tag
    return self._execute('import imp; print(imp.get_tag())', version)
  File "/usr/share/python3/debpython/interpreter.py", line 359, in _execute
    raise Exception('{} failed with status code {}'.format(command, output['returncode']))
Exception: python3.4 -c 'import imp; print(imp.get_tag())' failed with status code 1
dpkg: error processing package lsb-release (--configure):
 subprocess installed post-installation script returned error exit status 1
E: Sub-process /usr/bin/dpkg returned an error code (1)

2 ответа

Решение

Обновление до 16.04.1 и Python исправляет себя:P

Это происходит из-за того, что у вас на пути установлен сломанный питон, надеюсь, у вас еще есть работающий, но сломанный обнаруживается первым. Если вы погуглите это сообщение об ошибке, вы увидите, что это происходит, когда вы пытаетесь запустить python с библиотеками из неправильной версии. Обычно это происходит, если вы устанавливаете версию backports, а затем обновляете или устанавливаете приложение, устанавливающее собственный python.

попробуйте "какой питон" и "какой питон3", чтобы увидеть, какие из них найдены.

если вы найдете тот, который не находится в /usr/bin/, то вы можете просто сделать не исполняемым и попробовать еще раз. Если это сработает, вам нужно отойти от него, чтобы исправить это.

Хороший способ избежать этого как разработчика Python - это установить pip с помощью --user, чтобы он не затрагивал системный python и не использовал virtualenv.

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