Я пытаюсь построить дистрибутив Python с distutils
. К сожалению, моя структура каталогов выглядит следующим образом:Как я могу заставить свой setup.py использовать относительный путь к моим файлам?
/code /mypackage __init__.py file1.py file2.py /subpackage __init__.py /build setup.py
Вот мой setup.py
файл:
from distutils.core import setup
setup(
name = 'MyPackage',
description = 'This is my package',
packages = ['mypackage', 'mypackage.subpackage'],
package_dir = { 'mypackage' : '../mypackage' },
version = '1',
url = 'http://www.mypackage.org/',
author = 'Me',
author_email = '[email protected]',
)
Когда я бегу python setup.py sdist
он правильно создает файл манифеста, но не включает в свои исходные файлы в распределении , По-видимому, он создает каталог для хранения исходных файлов (т. Е. mypackage1
), а затем копирует каждый из исходных файлов в mypackage1/../mypackage
, который помещает их за пределы.
Как исправить это, не заставляя структуру каталогов соответствовать тому, что ожидает distutils
?
Меня не волнует, как выглядит структура в файле распределения, если она делает то же самое, когда пользователи пытаются установить ее с помощью easy_install. Но документация Python абсолютно ужасна, когда речь заходит об этих деталях - я понятия не имею, как должна выглядеть структура. И я все еще склоняюсь к мысли, что вы запускаете скрипт в дистрибутиве до его установки, чтобы установить дистрибутив. –