Nano Hash - криптовалюты, майнинг, программирование

Как установить модули CPAN при использовании Perlbrew?

Я начал использовать perlbrew и установил perl-5.12.2.

Я понимаю, что мне нужно переустановить модули CPAN, поэтому я переключился на свою новую версию Perl (perlbrew switch perl-5.12.2 и hash -r), убедился, что переключение прошло успешно (perl -v), затем попыталось установить какой-то модуль (File::Copy::Recursive с использованием cpan. Однако cpan говорит: "Файл :: Copy :: Recursive обновлен (0.38).

Когда я запускаю Perl-скрипт с помощью этого модуля, он кричит Can't locate File/Copy/Recursive.pm in @INC ... (показывая много perl-5.12.2 местоположений). Когда я снова переключаюсь на свой «нормальный» Perl (perlbrew off), скрипт работает нормально.

Какие-либо предложения? Возможно, CPAN плохо работает с perlbrew?


Ответы:


1

После установки perlbrew вы можете установить cpanm с помощью этой команды:

perlbrew install-cpanm

В противном случае вам нужно будет устанавливать cpanm вручную каждый раз, когда вы переключаете версию Perl на perlbrew. С помощью этой команды только один раз.

После установки вы можете использовать cpanm для установки недостающего модуля:

cpanm File::Copy::Recursive
01.03.2013
  • Кстати, если вы не знали (а я не знал), cpanm - это альтернатива cpan, которая лучше работает с perlbrew. После установки, как указано выше, вы можете использовать, например, cpanm install File :: Copy :: Recursive и т. д. 05.05.2014
  • @JoshuaRichardson: Обратите внимание, что cpanm install попытается установить модуль install. потому что cpanm не имеет такой команды: Usage: cpanm [options] Module [...] 14.06.2018

  • 2

    Все должно нормально работать как с cpan, так и с cpanm, то есть: при переключении perl с perlbrew cpan видит установленные модули той версии, которую вы используете.

    Хотя это правда, что cpanm - рекомендуемый инструмент для использования с Perlbrew, cpan позволяет создавать отчеты о тестах, так что я всегда им пользуюсь.

    03.02.2015
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..