2013-12-13 4 views
1

У меня есть проект python с помощью setuptools через setup.py для установки. Когда я не даю никаких аргументов python setup.py install, вещи устанавливаются в стандартный каталог --user в ~/.local. Тем не менее, когда я предоставляю --prefix ~/opt/myproject, это игнорируется командой установки, а вещи все равно попадают в ~/.local. Кажется, что любые каталоги, которые я указываю, выбирают схему пользователя.Зачем python setup.py игнорировать --prefix?

Я не делаю ничего особенного в моей setup.py, но могу опубликовать любой код, относящийся к отладке.

ответ

0

Я видел это поведение с certain versions из setuptools. Если вы импортируете setuptools, попробуйте импортировать его с distutils и посмотрите, разрешит ли он это.

+0

С другой версией 'setuptools' или использованием' distutils' эта проблема уходит, спасибо. –

0

--prefix ~/opt/myproject как именно вы используете эту команду? Я бы порекомендовал две вещи. Во-первых, --prefix аргумент нужен знак равенства, поэтому он должен выглядеть следующим образом:

prefix = ~/опт/MyProject

Во-вторых, я хотел бы использовать полный путь. Я не уверен, что при использовании ~ будет работать, он может, но вы, вероятно, лучше удачи, используя полный путь:

питон setup.py установить prefix =/главная/имя пользователя/опт/myproject

Подробнее о префиксной схеме вы можете узнать here.

+0

Спасибо за ваши предложения, к сожалению, это, похоже, не имеет никакого значения. –

0

У вас есть параметры по умолчанию в ~/.pydistutils.cfg?

+0

Спасибо за предложение, но нет, этот файл вообще не существует. –

+0

Можете ли вы дать более подробную информацию о макете проекта, содержимом файла setup.py и точной команде, которую вы запускаете с ее результатом/результатом? –

Смежные вопросы