Если я создам пакет из источника, как я могу полностью удалить или удалить?

Я решил свою проблему, используя это

Google Earth Install x64 в Linux Mint 18 Cin

После того, как я это решил, я начал танцевать песню принца «Поцелуй»,

122
задан 31 December 2011 в 23:49

6 ответов

Обычно вы можете использовать:

make uninstall

или

sudo make uninstall

, если приложение установлено как root.

Но это будет работать только если разработчик пакета позаботился о правильном правиле удаления.

Вы также можете попытаться просмотреть шаги, используемые для установки программного обеспечения, запустив:

make -n install

Затем попробуйте вручную отменить эти шаги.

В будущем, чтобы избежать подобных проблем, попробуйте использовать checkinstall вместо make install, когда это возможно (AFAIK всегда, если вы не хотите, чтобы скомпилированные и упакованные версии одновременно). Он создаст и установит файл deb, который вы сможете удалить, используя ваш любимый менеджер пакетов.

make clean обычно очищает каталоги зданий, он не удаляет пакет. Он используется, когда вы хотите быть уверенным, что все это скомпилировано, а не только измененные файлы.

143
ответ дан 25 May 2018 в 16:00
  • 1
    Я тоже это сделал. Но все же оно существует, как показано pkg-config и ls /usr/lib/myplugin/libXYZ.so – YumYumYum 12 December 2011 в 17:54
  • 2
    +1 для использования checkinstall - это заставляет всю эту проблему испаряться. – Oli♦ 12 December 2011 в 18:00
  • 3
    @Google: если make uninstall не работает, вам нужно будет отслеживать, что делает установка, и отменить ее вручную. – Javier Rivera 12 December 2011 в 18:42
  • 4
    Другое дело иметь в виду, что если make install был запущен как root (например, sudo make install), как правило, это всегда необходимо запустить sudo make uninstall для удаления программного обеспечения. – Eliah Kagan 9 July 2013 в 06:46
  • 5
    Если вы уже запустили make install, вы все равно можете использовать checkinstall. Обычно checkinstall будет перезаписывать все, что было создано make install. После этого просто используйте dpkg -r <package.deb>, и все должно быть удалено. – user502144 15 October 2017 в 21:00

Я не думаю, что это ошибка, было бы неплохо прочитать и научиться использовать checkinstall при установке из исходного кода.

вы можете установить checkinstall из репозиториев, краткое описание пакет;

CheckInstall отслеживает все файлы, созданные или измененные вашим сценарием установки («make install» «make install_modules», «setup» и т. д.), создает стандартный двоичный пакет и устанавливает его в ваша система дает вам возможность удалить его с помощью стандартных утилит управления пакетами вашего дистрибутива.

Эти ссылки ниже могут быть полезны для лучшего понимания. http://en.wikipedia.org/wiki/CheckInstall

http://en.wikipedia.org/wiki/CheckInstall

26
ответ дан 25 May 2018 в 16:00

Это не ошибка. Компиляция из источника - неподдерживаемый метод установки программного обеспечения, полностью обходя систему управления пакетами (которая используется Центром программного обеспечения).

Нет стандартного способа, чтобы программное обеспечение, скомпилированное из источника, было установлено или удалено, поэтому Ubuntu не может знать, что делать. Программное обеспечение даже не указано как установленная программа.

Вы должны следовать инструкциям дистрибьютора для установки и удаления такого программного обеспечения. Вы также можете связаться с разработчиком, чтобы попросить их создать пакет Debian, чтобы можно было использовать систему управления пакетами.

15
ответ дан 25 May 2018 в 16:00

Это не ошибка, это то, что происходит, когда разработчики прибегают к распределению через источник, а не через собственные методы упаковки.

Вы можете заставить исходные файлы стать debian-пакетами с помощью checkinstall или dhbuild , Честно говоря, по-моему, новым пользователям следует избегать установки из исходного кода, и разработчикам следует избегать распространения только по источнику.

3
ответ дан 25 May 2018 в 16:00
  • 1
    Я знаю, но иногда это неизбежно ... В этом случае это была небольшая игра, которая на самом деле не нужна, но когда-то мне пришлось установить MATLAB в вычислительный инструмент, используемый в моем университете, и мне пришлось установить его источником, так как они не имеет файла deb для ubuntu ... Но я обязательно пройду через методы checkinstall и dhbuild ... спасибо – nik90 21 January 2011 в 02:44

Нам нужно обсудить тот факт, что деинсталляция не всегда будет работать, поэтому ниже это более активное решение. Это связано с использованием программы paco, доступной в программном центре Ubuntu. Как только мы установили paco, мы можем использовать его в режиме журнала, когда мы «сделаем установку» программой. Paco действует как обертка для вашей «make install» и создает журнал в каталоге / var / log / paco со списком файлов, скопированных в различные каталоги. Кроме того, вы можете видеть файлы в лицевой части Paco. Например, когда я скомпилировал php из исходного кода, я сделал следующее:

paco -lp php5 "make install"

Параметр l запускает paco в режиме журнала. Это создало файл журнала в / var / log / paco с именем php5 ( имя, которое я дал в команде). Он содержал все файлы, которые копируются в различные стандартные местоположения во время установки. Вы можете использовать редактор командной строки или paco gui для просмотра файлов. Ниже приведен пример получения списка файлов с помощью редактора командной строки sed (Замените php5 на ваше имя файла).

cat /var/log/paco/php5 | sed -n 's/|\(.*\)//;/^#\(.*\)/d;p'

Как только вы получили список файлов, вы знаете, как их удалить, не так ли? Действительно, вы можете передать результаты указанной выше команды на make uninstall с помощью обратных тактов, как показано ниже:

sudo rm `cat /var/log/paco/php5 | sed -n 's/|\(.*\)//;/^#\(.*\)/d;p'`

Задание выполнено!

Примечание: к ограничениям LD_PRELOAD, paco не может следовать следам suid-программ. См. Справочную страницу.

0
ответ дан 25 May 2018 в 16:00

Я скомпилировал php-5.6.30 из источника без его настройки с помощью openssl, поэтому мне пришлось вернуться и установить его с нуля. Использование make uninstall не работает, поскольку Makefile for php не поддерживает его.

Однако этот шаг работал на меня, - я перечислил все файлы, связанные с php, и удалил их вручную, мне потребовалось около 5 минут, не нарушая пота. Вы также можете использовать эти шаги для удаления вашего скомпилированного программного обеспечения.

Заменить php программным обеспечением, которое необходимо удалить

whereis php

Вышеприведенная команда перечисляет каталоги где установлены двоичные файлы ex: / usr / local / bin / php, / usr / bin / php .. удалить каждый файл / каталог, указанный в вашем выводе.

sudo rm -f /usr/local/bin/php

[d9 ] Сделайте это со всеми файлами, перечисленными в вышеприведенном выводе, и все вы настроены на установку новой версии с нуля.

0
ответ дан 25 May 2018 в 16:00

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

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