The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

Замена установленного вручную perl-модуля на версию из пакета
Иногда требуется заменить ранее вручную установленный perl-модуль на его
вариант, появившийся в составе дистрибутива (Ubuntu/Debian).

Для удаления установленного вручную модуля можно использовать скрипт:

   #!/usr/bin/perl -w
   use ExtUtils::Packlist;
   use ExtUtils::Installed;
   $ARGV[0] or die "Usage: $0 Module::Name\n";
   my $mod = $ARGV[0];
   my $inst = ExtUtils::Installed->new();
   foreach my $item (sort($inst->files($mod))) {
     print "removing $item\n";
     unlink $item;
   }
   my $packfile = $inst->packlist($mod)->packlist_file();
   print "removing $packfile\n";
   unlink $packfile;

Запускаем скрипт для удаления, например, модуля XML::SAX:

  # chmod u+x rm_perl_mod.pl
  # ./rm_perl_mod.pl XML::SAX

Устанавливаем вариант модуля из пакетов:

  # apt-get install libxml-sax-expat-perl
 
24.03.2010 , Источник: https://bugs.launchpad.net/ubuntu/+...
Ключи: perl, module, packet, debian / Лицензия: CC-BY
Раздел:    Корень / Программисту и web-разработчику / Perl / Функции и модули в Perl

Обсуждение [ RSS ]
 
  • 1.1, Андрей, 11:31, 25/03/2010 [ответить] [смотреть все]
  • +2 +/
    А может просто не надо загаживать систему?
    Ставя из исходников использовать например замечательную утилиту stow.
    А дальше все просто
    --preifix=/usr/local/stow/prog_name
    make
    make install
    cd /usr/local/stow
    stow prog_name
     
     
  • 2.2, Sugar, 12:07, 25/03/2010 [^] [ответить] [смотреть все]
  • +/
    Вопрос: а на зачем??
    В совете предлагается использовать пакетный менеджер, который отследит все зависимости, имхо это правильно.
     
  • 2.3, alikd, 12:34, 25/03/2010 [^] [ответить] [смотреть все]
  • +/
    Спасибо. Узнал про stow
     
  • 2.4, Samm, 23:41, 25/03/2010 [^] [ответить] [смотреть все]
  • +/
    Это называется не загаживать систему? ололо.  Я еще понимаю юзать cpan - далеко не все есть в пакетах и в большинстве систем cpan либо регистрируется в списке пакетов (фря) либо ставит себя в не-системный путь, который при в PERLLIB находится до системного (чтобы можно было оверрайдить). На крайняк хоть свой репозиторий можно сделать. Но так, в /usr/local... no way
     
  • 1.5, pavel_simple, 23:50, 25/03/2010 [ответить] [смотреть все]
  • +/
    >[оверквотинг удален]
    >  # ./rm_perl_mod.pl XML::SAX
    >
    >Устанавливаем вариант модуля из пакетов:
    >
    >  # apt-get install libxml-sax-expat-perl
    >
    >
    >
    >URL: https://bugs.launchpad.net/ubuntu/+source/libxml-sax-expat-perl/+bug/365383/co
    >Обсуждается: http://www.opennet.ru/tips/info/2333.shtml

    вот кто-бы осилил написать нормальный мануал для разработчика..........

    dh-make-perl -- сделан специально чтобы не засирать систему и не мучать руки выковыривая хлам

     
  • 1.6, Пытливый Ум, 00:53, 26/03/2010 [ответить] [смотреть все]  
  • +/
    Может кто знает как запретить перловым модулям регистрироваться в системе портов в FreeBSD при установке оных через CPAN ?
     
     
  • 2.7, Samm, 03:19, 26/03/2010 [^] [ответить] [смотреть все]  
  • +/
    >Может кто знает как запретить перловым модулям регистрироваться в системе портов в
    >FreeBSD при установке оных через CPAN ?

    Зачем???

     
  • 1.8, Пытливый Ум, 20:34, 26/03/2010 [ответить] [смотреть все]  
  • +/
    Затем, что при установке через CPAN регистрируются не все пакеты. Многие из тех, что регистрируются (даже p5-..., а не bsdpan-...) не обновляются. Т.е. ничего кроме мусора при такой регистрации нет. Да и просто удобнее всем перловым хозяйством управлять из одного места
     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:



      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor