Я просто обновил от 14,04 до 16,04. Это не было легко, вероятно, потому что у меня было много тонких настроек на моей машине (обновленные пакеты, не установленные из "официальных" источников). Это не загрузилось бы, я думал сначала, что это было проблемой с видеокартой ("Radeon init ошибка"), но в конечном счете заставило его загрузиться путем загрузки (на другой машине) libstdc++6
затем установка с dpkg -i
, использование Личинки базируется оболочка (подобная проблема как та здесь).
Я теперь могу загрузить, иметь настольную сессию.Отлично.
Теперь проблема: у Меня есть тяжелая проблема зависимости от пакета, весь apt-get
команды перестанут работать. Рассмотрите это:
$ sudo apt-get check
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++-5-dev : Depends: libstdc++6 (>= 5.5.0-12ubuntu1~14.04) but 5.4.0-6ubuntu1~16.04.10 is installed
libstdc++6 : Depends: gcc-5-base (= 5.4.0-6ubuntu1~16.04.10) but 5.5.0-12ubuntu1~14.04 is installed
Breaks: libogre-1.8.0 (<= 1.8.1+dfsg-0ubuntu5) but 1.8.1+dfsg-0ubuntu3 is installed
libstdc++6:i386 : Depends: gcc-5-base:i386 (= 5.4.0-6ubuntu1~16.04.10) but 5.5.0-12ubuntu1~14.04 is installed
Breaks: libogre-1.8.0 (<= 1.8.1+dfsg-0ubuntu5) but 1.8.1+dfsg-0ubuntu3 is installed
E: Unmet dependencies. Try using -f.
Данный совет (apt-get -f install
) ничего не делает.
Как Вы видите, что является странным, то, что, кажется, существует путаница пакетов от 14,04 и 16.04:
libstdc++-5-dev
зависит от 14,04 версий libstdc++6
, и у меня есть, конечно, 16,04 установленных версий.libstdc++6
зависит от 16,04 пакетов (gcc-5-base
) но у меня, кажется, все еще есть 14,04 версий!!!Я пытался переустановить эти 3 пакета с:
sudo apt-get -f install <pkgname> --reinstall
=> неспособный
Я пытался удалить libstdc ++-5-dev с:
sudo apt-get -f remove libstdc++-5-dev
=> это просит невстреченные зависимости нескольких других пакетов. Если я удаляю их один за другим, я заканчиваю в той же точке.
Я также попробовал много других вещей, но в основном закончите в той же точке.
Другая информация:
$ lsb_release -ir
Distributor ID: Ubuntu
Release: 16.04
$ uname -m
x86_64
Вопрос: как я вытаскиваю меня из этой проблемы зависимости?
Решенная проблема, благодарность этому вопросу и его ответу (не нашел его сначала как заголовок, не является очень явной, таким образом я не забираю свой вопрос, поскольку это могло бы быть полезно для других).
Так, на всякий случай решение:
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get -f install
(и конечно после этого: apt-get upgrade
и apt autoremove
завершить).
У меня была эта неудовлетворенная ошибка зависимости. Используя Software Updater, я установил рекомендуемые GCC, GNU C Compiler, GNU C++ Compiler, после чего я даже не смог перезапуститься и попасть на экран входа в систему. Прочитав каждое решение в течение двух дней, ни одно из которых не помогло мне, я объединил 2 из них, чтобы окончательно решить проблему.
1- Изменены источники в файле /etc/apt/sources.list на те, что по умолчанию, которые я нашел здесь: https://gist.github.com/rohitrawat/60a04e6ebe4a9ec1203eac3a11d4afc1
sudo leafpad /etc/apt/sources.list
(я использую leafpad, вы можете использовать любой другой текстовый редактор, если хотите)
2- Я узнал, что aptitude лучше справляется с зависимостью проблемы, поэтому я запускаю эту команду для установки gcc
sudo aptitude install gcc
3- Затем aptitude предложил мне решение для устранения проблемы, которая представляет собой очень длинный список для удаления важных пакетов, таких как arandr, ubuntu-desktop и т. д., поэтому я нажал n и не принял первое предложение, но принял второе предложение следующим образом:
-------------------------------------------------------------
The following actions will resolve these dependencies:
Upgrade the following packages:
1) gcc-5-base [5.4.0-6ubuntu1~16.04.12 (now, xenial-updates) -> 5.5.0-12ubu
2) libstdc++6 [5.4.0-6ubuntu1~16.04.12 (now, xenial-updates) -> 9.3.0-10ubu
Downgrade the following packages:
3) gcc-9-base [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (xenial
4) gcc-9-base:i386 [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (x
5) libatomic1 [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (xenial
6) libcc1-0 [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (xenial)]
7) libgcc1 [1:9.3.0-11ubuntu0~14.04 (now) -> 1:9.3.0-10ubuntu2~16.04 (xenia
8) libgcc1:i386 [1:9.3.0-11ubuntu0~14.04 (now) -> 1:9.3.0-10ubuntu2~16.04 (
9) libgomp1 [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (xenial)]
10) libitm1 [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (xenial)]
11) liblsan0 [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (xenial)]
12) libobjc4 [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (xenial)]
13) libquadmath0 [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (xeni
14) libtsan0 [9.3.0-11ubuntu0~14.04 (now) -> 9.3.0-10ubuntu2~16.04 (xenial)]
Accept this solution? [Y/n/q/?] **Y**
и проблема исчезла.