Создание пакетов с модулями Python — различия между версиями
D uragan (обсуждение | вклад) |
D uragan (обсуждение | вклад) (Now we use 2019.1 branch) |
||
Строка 13: | Строка 13: | ||
Как только пакет успешно соберется, создаем src.rpm с помощью {{Cmd|rpmbuild -bs}} и делаем из него проект на ABF. | Как только пакет успешно соберется, создаем src.rpm с помощью {{Cmd|rpmbuild -bs}} и делаем из него проект на ABF. | ||
− | Для надежности, следует попробовать собрать пакет уже на ABF - это позволяет выявить ошибки, которые можно пропустить при локальной сборке. Для этого необходимо перейти на страничку вашего проекта, нажать "New Build" и в появившемся окне слева отметить галочками репозитории main и contrib для платформы | + | Для надежности, следует попробовать собрать пакет уже на ABF - это позволяет выявить ошибки, которые можно пропустить при локальной сборке. Для этого необходимо перейти на страничку вашего проекта, нажать "New Build" и в появившемся окне слева отметить галочками репозитории main и contrib для платформы rosa2019.1 (последней на момент написания этой странички, если есть платформа поновее - то надо выбирать ее). |
Более подробная информация о правилах оформления модулей Python приведена на странице [[Python policy]]. | Более подробная информация о правилах оформления модулей 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.