Я пытаюсь создать пакет для модуля Perl, который у меня есть, а затем поместить его в локальный канал, чтобы иметь возможность установить его в среде conda. Я пытаюсь следовать документации conda, но, поскольку это первый раз, когда я пытаюсь это сделать, я как бы потерял себя.
Документ для создания пакета conda с нуля: https://docs.conda.io/projects/conda-build/en/latest/user-guide/tutorials/build-pkgs.html
Документ для понимания метаданных файла meta.yaml: https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-section
Документ для conda-build: https://conda.io/projects/conda-build/en/latest/resources/commands/conda-build.html
Итак, сначала я создал рецепт с файлами meta.yaml и build.sh. Версия Perl, включенная в мой conda, - 5.26.2. Однако модуль Perl был написан с использованием Perl 5.18.2. Я не могу найти способ изменить версию Perl ...
Я попытался :
$ conda-build <path_to_perl_module>/recipe --perl=5.18.2
Я также попытался добавить в файл meta.yaml некоторые спецификации Perl в разделе требований.
requirements:
host:
perl >=5.18.2
Но в обоих случаях (я также пытался изменить раздел требований к запуску / сборке с тем же результатом), когда я устанавливаю пакет в среде conda, в консоли появляется приглашение:
The following packages will be downloaded:
package | build
---------------------------|-----------------
pmp-0.8.2_BSP | 0 5 KB file:///home/usr/BSP-channel
------------------------------------------------------------
Total: 5 KB
The following NEW packages will be INSTALLED:
libgcc-ng pkgs/main/linux-64::libgcc-ng-9.1.0-hdf63c60_0
perl conda-forge/linux-64::perl-5.26.2-h516909a_1006
pmp BSP-channel/linux-64::pmp-0.8.2_BSP-0
Как видите, менеджер пакетов хочет установить Perl 5.26.2. Думаю, я делаю это неправильно, но документация мне особо не помогает или я не нашел соответствующей части.
Любые зацепки были бы очень признательны.
Хорошего дня / ночи!
edit: Что я мог сделать?
Использовать мой локальный Perl, расположенный в usr / bin / Perl?
Загрузите пакет Perl 5.18.2 по адресу: https://www.cpan.org/src/README.html и как-то связал его внутри файла meta.yaml?
>=5.18.2
, а не просто5.18.2
или5.18.*
? - person melpomene   schedule 28.06.2019perl 5.18.2
илиperl 5.18.*
, я получил это сообщение об ошибке при попытке собрать пакет:conda_build.exceptions.DependencyNeedsBuildingError: Unsatisfiable dependencies for platform linux-64: set(['perl=5.18.2'])
- person AntMau   schedule 28.06.2019usr/bin/perl
, и это хорошая версия. Я не нашел способа локально связать свой Perl внутри файла meta.yaml. Возможно ли такое? --- У меня есть еще один вариант: загрузить пакет Perl 5.18.2 и поместить его в мой локальный канал и указать в meta.yaml, чтобы использовать этот пакет как Perl, но если это возможно, я действительно не знаю какие шаги следует предпринять. - person AntMau   schedule 28.06.2019