Что может привести к тому, что установленное приложение не будет распознано как таковое?

Мне нужно вернуть мою версию gdb обратно в предыдущую версию, чтобы она была совместима с определенным инструментом. В настоящее время у меня установлен gdb 7.7.1. Если я вхожу в gdb в терминал и нажимаю enter, запускается gdb. Однако, когда я запускаю sudo apt-get remove gdb, он говорит следующее:

$ sudo apt-get remove gdb Reading package lists... Done Building dependency tree Reading state information... Done Package 'gdb' is not installed, so not removed 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Это тот случай, когда я использую sudo dpkg -r gdb. Как я могу исправить это, чтобы программа была сначала распознана, а затем удалена?

Ubuntu 14.04.2 LTS 3.13.0-53-generic
6
задан 2 June 2017 в 21:48

3 ответа

Сначала выясните, какой бинарный файл будет запущен при запуске gdb с помощью команды which:

which gdb

он выдает путь, подобный: /usr/bin/gdb, тогда мы должны искать, какой пакет установил этот файл с помощью dpkg:

dpkg -S /usr/bin/gdb

или даже:

dpkg -S $(which gdb)

, поэтому он дает нам имя пакета, например: gdb: /usr/bin/gdb. затем удалите этот пакет: sudo apt remove gdb в этом случае.

. В качестве альтернативы вы можете просто переустановить старую версию, сначала посмотрите, какие версии доступны вам:

apt-cache madison gdb | grep -iv sou
  gdb | 7.11.1-0ubuntu1~16.04 | http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages
  gdb | 7.11-0ubuntu1 | http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages

, а затем установите более старую версию, она позаботится о самой новой версии:

$ sudo apt install gdb=7.11-0ubuntu1

The following packages will be DOWNGRADED:
  gdb
0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
7
ответ дан 22 May 2018 в 22:02
  • 1
    FYI. Благодаря вашему решению я смог обнаружить, что он назывался «gdb-minimum» из dpkg -S – the_endian 31 May 2017 в 13:06

Сначала выясните, какой бинарный файл будет запущен при запуске gdb с помощью команды which:

which gdb

он выдает путь, подобный: /usr/bin/gdb, тогда мы должны искать, какой пакет установил этот файл с помощью dpkg:

dpkg -S /usr/bin/gdb

или даже:

dpkg -S $(which gdb)

, поэтому он дает нам имя пакета, например: gdb: /usr/bin/gdb. затем удалите этот пакет: sudo apt remove gdb в этом случае.

. В качестве альтернативы вы можете просто переустановить старую версию, сначала посмотрите, какие версии доступны вам:

apt-cache madison gdb | grep -iv sou gdb | 7.11.1-0ubuntu1~16.04 | http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages gdb | 7.11-0ubuntu1 | http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages

, а затем установите более старую версию, она позаботится о самой новой версии:

$ sudo apt install gdb=7.11-0ubuntu1 The following packages will be DOWNGRADED: gdb 0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
7
ответ дан 18 July 2018 в 12:26

Сначала выясните, какой бинарный файл будет запущен при запуске gdb с помощью команды which:

which gdb

он выдает путь, подобный: /usr/bin/gdb, тогда мы должны искать, какой пакет установил этот файл с помощью dpkg:

dpkg -S /usr/bin/gdb

или даже:

dpkg -S $(which gdb)

, поэтому он дает нам имя пакета, например: gdb: /usr/bin/gdb. затем удалите этот пакет: sudo apt remove gdb в этом случае.

. В качестве альтернативы вы можете просто переустановить старую версию, сначала посмотрите, какие версии доступны вам:

apt-cache madison gdb | grep -iv sou gdb | 7.11.1-0ubuntu1~16.04 | http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages gdb | 7.11-0ubuntu1 | http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages

, а затем установите более старую версию, она позаботится о самой новой версии:

$ sudo apt install gdb=7.11-0ubuntu1 The following packages will be DOWNGRADED: gdb 0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
7
ответ дан 24 July 2018 в 19:57

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

Похожие вопросы: