У меня проблема, когда я запускаю sudo apt-get dist-upgrade
Я получаю следующее сообщение:
$ sudo apt-get dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
libstdc++6 : Depends: gcc-5-base (= 5.4.0-6ubuntu1~16.04.4) but 5.4.1-2ubuntu1~14.04 is installed
Breaks: libreoffice-core (<= 1:4.4.4~rc3-0ubuntu1) but 1:4.2.8-0ubuntu5.1 is installed
Breaks: libstdc++6:i386 (!= 5.4.0-6ubuntu1~16.04.4) but 7.2.0-1ubuntu1~14.04 is installed
libstdc++6:i386 : Breaks: libstdc++6 (!= 7.2.0-1ubuntu1~14.04) but 5.4.0-6ubuntu1~16.04.4 is installed
E: Unmet dependencies. Try using -f.
Я попытался сделать sudo apt-get -f install и получил такой результат:
$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
libstdc++6
The following packages will be upgraded:
libstdc++6
1 upgraded, 0 newly installed, 0 to remove and 39 not upgraded.
3 not fully installed or removed.
Need to get 0 B/305 kB of archives.
After this operation, 501 kB disk space will be freed.
Do you want to continue? [Y/n] Y
(Reading database ... 370318 files and directories currently installed.)
Preparing to unpack .../libstdc++6_7.2.0-1ubuntu1~14.04_amd64.deb ...
Unpacking libstdc++6:amd64 (7.2.0-1ubuntu1~14.04) over (5.4.0-6ubuntu1~16.04.4) ...
dpkg: error processing archive /var/cache/apt/archives/libstdc++6_7.2.0-1ubuntu1~14.04_amd64.deb (--unpack):
trying to overwrite shared '/usr/share/doc/libstdc++6', which is different from other instances of package libstdc++6:amd64
Processing triggers for libc-bin (2.19-0ubuntu6.13) ...
Errors were encountered while processing:
/var/cache/apt/archives/libstdc++6_7.2.0-1ubuntu1~14.04_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Я думаю, что я добавил неправильный ppa в мой Linux Mint, указывающий на некоторые вещи Ubuntu. Также, возможно, я установил lib6stdc++ для архитектуры i386, а не x64.
Короче говоря: Я полностью потерян с этим. Не могли бы вы мне помочь разобраться?
Заранее спасибо за помощь :)
Правильная версия libstdc++6 — 5.4.0 в Ubuntu Xenial / Mint 18. Устанавливается версия 7.2, и она конфликтует с тем, что уже установлено на вашем компьютере. Это означает, что libstdc++6 загружается из неофициального репозитория Mint/Ubuntu.
Сначала определите, откуда он берется:
$ apt-cache policy libstdc++6
libstdc++6:
Installed: 5.4.0-6ubuntu1~16.04.4
Candidate: 5.4.0-6ubuntu1~16.04.4
Version table:
*** 5.4.0-6ubuntu1~16.04.4 500
500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages
100 /var/lib/dpkg/status
5.3.1-14ubuntu2 500
500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages
вывод apt-cache policy
кратко объясняется в этом вопросе. Он дает вам разных кандидатов, установленную версию и ту, которая будет установлена (наивысший приоритет).
Из этого вывода узнайте, откуда берется версия 7.2, и закомментируйте соответствующий репозиторий (вы также можете понизить его приоритет, если удаление репозитория вам не подходит -- man apt_preferences
).