В Linux, как мне удалить версию Perl, которая была построена из исходного кода? - PullRequest
5 голосов
/ 27 апреля 2011

Мне нужно удалить версию Perl, созданную из исходного кода.Каталог, из которого он был создан, существует.Однако я не нашел цель под названием «удалить».У меня есть версия Perl 5.12.2, и она установлена ​​в распределенном Linux Fedora.

Ответы [ 4 ]

5 голосов
/ 17 апреля 2013

Поскольку у perl нет цели 'make uninstall', вам необходимо удалить файлы вручную. Лучший способ сделать это - получить полный список установленных файлов. Для этого вам необходимо:

  1. Создайте временный каталог, например, / USR / местные / SRC / TEMP / Perl
  2. Отредактируйте Makefile в исходном каталоге исходных текстов Perl (надеюсь, вы его не удалили) и добавьте путь из шага 1 выше в начало всех строк установки (например, bin = ..., scriptdir = ..., INSTALLPREFIXEXP = ...)
  3. Выполнить make install
  4. Перейдите во временный каталог и запустите: find . -type f > filelist.txt
  5. Отредактируйте этот файл и убедитесь, что вы действительно хотите удалить все, что там есть (вы сильно испортите свою систему, если испортите это)
  6. Выполнить cat filelist.txt | xargs rm
  7. Вручную удалите каталог библиотеки perl5 (обычно это что-то вроде / usr / local / lib64 / perl5 - вы можете найти его в файле filelist.txt)

Вот и все, все прошло.

В следующий раз выделите его в отдельную директорию и просто вставьте ссылку: -)

2 голосов
/ 27 апреля 2011

Если Perl установлен в своем собственном каталоге - скажем, /opt/perl/v5.12.2 - и был собран из исходного кода, то «окончательное разрешение» работает хорошо:

rm -fr /opt/perl/v5.12.2

Я почти всегда собираю свой собственный Perl;Я всегда собираю свой Perl, чтобы он устанавливался в свой уникальный каталог;когда я, наконец, дошел до того, чтобы удалить его, вот как я это делаю.

0 голосов
/ 14 октября 2017

Метод, который

  1. Предполагается, что для установки в поддереве /usr/local,
  2. не требуется каталог сборки
  3. немного менее точен

Запустите следующую команду,

sudo find /usr/local -name '*perl*' -or -name 'pod2*' -or -name '*cpan*' -exec rm -rf {} \;
0 голосов
/ 27 апреля 2011

Если у вас все еще есть источник, вы можете удалить его, используя:

make uninstall

пока вы находитесь в исходном каталоге.

Кстати, я рекомендую использовать checkinstall в следующий раз при установке из исходного кода. Смотри это

Если у вас (как вы сказали ...) нет целевого удаления, вам, вероятно, придется удалить его вручную.

...