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)
Linux MintにUbuntuエントリを指す誤ったppaを追加したようです。また、x64アーキテクチャの代わりにi386用のlib6stdc ++をインストールした可能性があります。
短い話:私はこれについて完全に迷子になりました。この問題を解決するのに役立ちますか?
助けてくれてありがとうございます:)
答え1
Ubuntu Xenial/Mint 18の正しいlibstdc++6バージョンは5.4.0です。バージョン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
。