Примечание. Первоначально у меня было длинное объяснение предыстории, ведущее к тому, почему я пытался выполнить apt-get remove g ++
. Я удалил это как нерелевантное после того, как попробовал это в чистой установке 11.10 (32-бит), а затем, после обновления, в 12.04.
Похоже, проблема возникла только в 12.04. Пора сменить фокус и посмотрим, является ли это ошибкой, о которой сообщают.
Я не нашел ничего похожего, поэтому я сообщил об этом как Ошибка № 982716 .
Пытаясь решить проблему с компиляцией Octave, я удалил все пакеты, необходимые для компиляции Octave, чтобы затем я мог их переустановить. При этом я столкнулся с неожиданным ответом от apt-get
в 12.04.
Когда я пытаюсь удалить пакет g ++
, apt-get вместо этого пытается установить g ++ - 4.6
. Я ожидал получить сообщение Пакет g ++ не установлен, поэтому не удален
. Почему я этого не сделал?
me@BlueUbuntu64:~$ sudo apt-get -V --dry-run remove g++
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
g++-4.6 (4.6.3-1ubuntu4)
libstdc++6-4.6-dev (4.6.3-1ubuntu4)
Suggested packages:
g++-multilib (4.6.3-1ubuntu5)
g++-4.6-multilib (4.6.3-1ubuntu4)
gcc-4.6-doc (4.6.3-1ubuntu4)
libstdc++6-4.6-dbg (4.6.3-1ubuntu4)
libstdc++6-4.6-doc (4.6.3-1ubuntu4)
The following NEW packages will be installed:
g++ (4.6.3-1ubuntu5)
g++-4.6 (4.6.3-1ubuntu4)
libstdc++6-4.6-dev (4.6.3-1ubuntu4)
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Inst libstdc++6-4.6-dev (4.6.3-1ubuntu4 Ubuntu:12.04/precise [amd64]) []
Inst g++-4.6 (4.6.3-1ubuntu4 Ubuntu:12.04/precise [amd64])
Inst g++ (4:4.6.3-1ubuntu5 Ubuntu:12.04/precise [amd64])
Conf libstdc++6-4.6-dev (4.6.3-1ubuntu4 Ubuntu:12.04/precise [amd64])
Conf g++-4.6 (4.6.3-1ubuntu4 Ubuntu:12.04/precise [amd64])
Conf g++ (4:4.6.3-1ubuntu5 Ubuntu:12.04/precise [amd64])
Результат указания параметра - no-install-рекомендует
для apt-get
. На удивление (для меня) кажется, что это не так. Также (со временем) обновит отчет об ошибке. (Почему нет?)
me@Vbubux86-11:~$ sudo apt-get -V --dry-run --no-install-recommends remove g++
[sudo] password for me:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
g++-4.6 (4.6.3-1ubuntu4)
libstdc++6-4.6-dev (4.6.3-1ubuntu4)
Suggested packages:
g++-multilib (4.6.3-1ubuntu5)
g++-4.6-multilib (4.6.3-1ubuntu4)
gcc-4.6-doc (4.6.3-1ubuntu4)
libstdc++6-4.6-dbg (4.6.3-1ubuntu4)
libstdc++6-4.6-doc (4.6.3-1ubuntu4)
The following NEW packages will be installed:
g++ (4.6.3-1ubuntu5)
g++-4.6 (4.6.3-1ubuntu4)
libstdc++6-4.6-dev (4.6.3-1ubuntu4)
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Inst libstdc++6-4.6-dev (4.6.3-1ubuntu4 Ubuntu:12.04/precise [i386]) []
Inst g++-4.6 (4.6.3-1ubuntu4 Ubuntu:12.04/precise [i386])
Inst g++ (4:4.6.3-1ubuntu5 Ubuntu:12.04/precise [i386])
Conf libstdc++6-4.6-dev (4.6.3-1ubuntu4 Ubuntu:12.04/precise [i386])
Conf g++-4.6 (4.6.3-1ubuntu4 Ubuntu:12.04/precise [i386])
Conf g++ (4:4.6.3-1ubuntu5 Ubuntu:12.04/precise [i386])
me@Vbubux86-11:~$ apt-cache policy g++
g++:
Installed: (none)
Candidate: 4:4.6.3-1ubuntu5
Version table:
4:4.6.3-1ubuntu5 0
500 http://us.archive.ubuntu.com/ubuntu/ precise/main i386 Packages
От обновления до Ошибки № 982716:
This bug was fixed in the package apt - 0.8.16~exp12ubuntu10
(Я никогда не находил время для присоединения результата также включая --no-install-recommends
. О, хорошо.)
Попробуйте сделать это:
sudo apt-get -V --dry-run --no-install-recommends remove g++