Установите предварительно скомпилированное расширение Python с distutils - PullRequest
1 голос
/ 05 ноября 2011

Как я могу указать произвольный набор файлов (необязательно .py файлы), чтобы они распространялись и устанавливались так же, как обычные модули Python?

Некоторый фон

Я использую distutilsраспространять и устанавливать мою библиотеку Python.Один из модулей в этой библиотеке импортирует стороннее расширение Python под названием bpy.so (это модуль Blender ).Расширение bpy.so также требует некоторых других файлов.Я хочу распространять и устанавливать bpy.so и дополнительные необходимые файлы с моей библиотекой.

Один из способов сделать это - указать все дополнительные файлы как data_files для setup ().Однако я не знаю, как надежно указать тот же каталог установки, который используется для моих чистых модулей Python (например, /usr/local/lib/python3.2/dist-packages).Я могу распространять дополнительные файлы, создав файл MANIFEST.in (см. этот вопрос ), но я также хочу установить файлы.

1 Ответ

0 голосов
/ 05 ноября 2011

Я бы предложил использовать setuptools поверх distutils.

Этот является хорошим справочным документом для начала работы с ним. Преимущество использования setuptools заключается в том, что у него есть несколько приятных функций, таких как возможность автоматического включения всех файлов в данный каталог (пакет) или в соответствии с фильтрами. Этот является разделом вышеупомянутого документа, касающимся этого конкретного аспекта.

НТН!

PS: текущая ситуация / ограничения distutils являются источником многих жалоб со стороны большинства пользователей. Кажется, новое поколение библиотеки уже в пути!

...