Установка SUDS на python 2.6.4
-
20-09-2019 - |
Вопрос
У меня возникли реальные проблемы с установкой SUDS в python 2.6.4.Я попытался установить установочный файл, но он говорит, что местоположение python не может быть найдено.Это потому, что я изменил расположение python.Я пытался использовать easy_install, но мне не повезло.Кто-нибудь знает простой способ сделать это или у вас есть ссылка на четкие инструкции по установке.
Команда, которую я ввел, была:
python setup.py install
Результат, который я получил, был:
running install
error: cannot create or remove files in install directory
The following error occurred while trying to add or remove files in the
installation directory:
[Errno 13] Permission denied: '/usr/local/lib/python2.6/site-packages/test-easy-install-9203.write-test'
The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:
/usr/local/lib/python2.6/site-packages/
Perhaps your account does not have write access to this directory? If the
installation directory is a system-owned directory, you may need to sign in
as the administrator or "root" account. If you do not have administrative
access to this machine, you may wish to choose a different installation
directory, preferably one that is listed in your PYTHONPATH environment
variable.
For information on other options, you may wish to consult the
documentation at:
http://peak.telecommunity.com/EasyInstall.html
И если мне нужно изменить путь к python, как именно вы это делаете.
Я попробовал то, что сказал сделать один сайт, и сначала он должен был создать файл altinstall.pth в каталоге site-packages Python, содержащий следующую строку:
import os, site; site.addsitedir(os.path.expanduser('~/lib/python2.3'))
Затем он говорит изменить distutils.cfg в каталоге distutils с помощью:
[install]
install_lib = ~/lib/python2.3
# This next line is optional but often quite useful; it directs EasyInstall
# and the distutils to install scripts in the user's "bin" directory. For
# Mac OS X framework Python builds, you should use /usr/local/bin instead,
# because neither ~/bin nor the default script installation location are on
# the system PATH.
#
install_scripts = ~/bin
Решение
Вы пробовали установить PYTHONPATH в качестве местоположения python?Может быть, таким образом он узнает, где его установить.
Вы вызываете это с помощью python setup.py install
.Попробуй sudo python setup.py install
, если вы используете какой-нибудь linux и вы sudoer.
Другие советы
Я тоже получал подобные сообщения, когда устанавливал suds и python-ntlm.На нашем сайте есть отдельная область для установок, так что мы можем поддерживать несколько версий, поэтому моим первым шагом по установке было
python setup.py install --prefix=/install/suds/suds-0.4
и я получил те же сообщения о installplace.Чтобы исправить:
Убедитесь, что каталоги есть с
mkdir -p /install/suds/suds-0.4/lib/python2.6/site-packages/
(Это меня немного удивило, я думал, что программа установки создаст каталоги.)
Убедитесь, что у вас есть разрешение на запись в дереве с
chmod -R 775 /install/suds/suds-0.4/lib/python2.6/site-packages/
Ни то, ни другое не избавило от сообщения!
Последним шагом было поместить область установки в PYTHONPATH, а затем выполнить setup.py
export PYTHONPATH=/install/suds/suds-0.4/lib/python2.6/site-packages:$PYTHONPATH
python setup.py install --prefix=/opt/sw/fw/qce/suds/suds-0.4
с окончательным chmod, чтобы сделать вновь установленные файлы читаемыми на случай, если umask настроен на что-то ограничительное:
chmod 755 /install/suds/suds-0.4/lib/python2.6/site-packages/*
После этого я мог бы запустить python и импортировать suds.Ключевым шагом было помещение каталога suds site-packages в PYTHONPATH.
Я ожидаю, что эта помощь придет слишком поздно, чтобы помочь оригинальному плакату, но я надеюсь, что это поможет кому-то еще, кто обратится к SO с этим вопросом.Как и я.
Мне понадобилось бы больше информации о вашей операционной системе, чтобы дать полностью точный ответ.Судя по звукам вашего вопроса, вы изменили свой путь к python.Обычно у вас будет предустановленная версия python, совместимая с вашей операционной системой.Например, CentOS 5.x поставляется с python 2.4, однако вы можете сделать yum install
из python 2.6.После установки вы можете запустить python 2.6 с помощью python26
команда.
При выполнении установок и пакетов я бы рекомендовал вам стараться как можно чаще использовать менеджеры пакетов, поскольку они помогают позаботиться о ваших зависимостях, таких как yum
.Yum также помогает управлять пакетами обновления вместо того, чтобы выполнять обновления вручную.Следующая лучшая вещь - выполнить установку через pip
или easy install
, в случае с этим вопросом, вы можете попробовать easy_install https://fedorahosted.org/releases/s/u/suds/python-suds-0.4.tar.gz
(требуется setuptools), и в качестве последнего средства вы можете попробовать выполнить установку вручную.I если я понимаю, что выполняю установку вручную, я чувствую, что где-то потерпел неудачу :)
Другие подробно рассказали о том, как выполнить установку вручную.
Удачи.