Создание пакетов с модулями Python — различия между версиями
D uragan (обсуждение | вклад) (Новая страница: «Подготовка пакета для модуля языка '''Python''' может быть осуществлена с помощью модуля {{Prog|b…») |
D uragan (обсуждение | вклад) (Now we use 2019.1 branch) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 8: | Строка 8: | ||
Если же сборка пакета завершилась с ошибкой, то необходимо доработать spec-файл и уже самостоятельно попробовать собрать с его помощью пакет с помощью команды | Если же сборка пакета завершилась с ошибкой, то необходимо доработать spec-файл и уже самостоятельно попробовать собрать с его помощью пакет с помощью команды | ||
+ | |||
rpmbuild -bb <имя_spec_файла> | rpmbuild -bb <имя_spec_файла> | ||
Как только пакет успешно соберется, создаем src.rpm с помощью {{Cmd|rpmbuild -bs}} и делаем из него проект на ABF. | Как только пакет успешно соберется, создаем src.rpm с помощью {{Cmd|rpmbuild -bs}} и делаем из него проект на ABF. | ||
+ | |||
+ | Для надежности, следует попробовать собрать пакет уже на ABF - это позволяет выявить ошибки, которые можно пропустить при локальной сборке. Для этого необходимо перейти на страничку вашего проекта, нажать "New Build" и в появившемся окне слева отметить галочками репозитории main и contrib для платформы rosa2019.1 (последней на момент написания этой странички, если есть платформа поновее - то надо выбирать ее). | ||
+ | |||
+ | Более подробная информация о правилах оформления модулей Python приведена на странице [[Python policy]]. | ||
[[Категория:Практика студентов]] | [[Категория:Практика студентов]] |
Текущая версия на 13:03, 3 июля 2019
Подготовка пакета для модуля языка Python может быть осуществлена с помощью модуля bdist_rpm5. Этот способ подходит для модулей, собираемых с помощью setuptools. Определить, относится ли ваш модуль к этому виду, очень просто - достаточно посмотреть, есть ли в лиректории с его исходным кодом файл setup.py. Если есть, то переходим в директорию с исходным кодом модуля и запускаем следующую команду:
$ python setup.py bdist_rpm5
Как минимум, эта команда создаст spec-файл в поддиректории build/bdist.linux-x86_64/rpm/SPECS (либо build/bdist.linux-i686/rpm/SPECS, если у вас 32битная система).
bdist_rpm5 сразу же попробует собрать пакет с использованием этого файла, и если вам повезет и пакет действительно соберется, то в поддиректории build/bdist.linux-x86_64/rpm/RPMS вы обнаружите результаты сборки. В этом случае можно смело брать src.rpm файл из поддиректории build/bdist.linux-x86_64/rpm/SRPMS и из него проект на ABF.
Если же сборка пакета завершилась с ошибкой, то необходимо доработать spec-файл и уже самостоятельно попробовать собрать с его помощью пакет с помощью команды
rpmbuild -bb <имя_spec_файла>
Как только пакет успешно соберется, создаем src.rpm с помощью rpmbuild -bs и делаем из него проект на ABF.
Для надежности, следует попробовать собрать пакет уже на ABF - это позволяет выявить ошибки, которые можно пропустить при локальной сборке. Для этого необходимо перейти на страничку вашего проекта, нажать "New Build" и в появившемся окне слева отметить галочками репозитории main и contrib для платформы rosa2019.1 (последней на момент написания этой странички, если есть платформа поновее - то надо выбирать ее).
Более подробная информация о правилах оформления модулей Python приведена на странице Python policy.