Ответ 1
Вот как я исправил проблемы:
Сначала установите Xcode CLI
:
xcode-select --install
Затем переустановите Python
:
sudo brew reinstall python
Наконец, установите nltk
:
sudo pip install -U nltk
Надеюсь, это поможет:)
Я сделал sudo pip install -U nltk
, как было предложено в документации nltk.
Тем не менее, я получаю следующий вывод:
Collecting nltk
Downloading nltk-3.0.5.tar.gz (1.0MB)
100% |████████████████████████████████| 1.0MB 516kB/s
Collecting six>=1.9.0 (from nltk)
Downloading six-1.9.0-py2.py3-none-any.whl
Installing collected packages: six, nltk
Found existing installation: six 1.4.1
DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project.
Uninstalling six-1.4.1:
Exception:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/pip/basecommand.py", line 211, in main
status = self.run(options, args)
File "/Library/Python/2.7/site-packages/pip/commands/install.py", line 311, in run
root=options.root_path,
File "/Library/Python/2.7/site-packages/pip/req/req_set.py", line 640, in install
requirement.uninstall(auto_confirm=True)
File "/Library/Python/2.7/site-packages/pip/req/req_install.py", line 716, in uninstall
paths_to_remove.remove(auto_confirm)
File "/Library/Python/2.7/site-packages/pip/req/req_uninstall.py", line 125, in remove
renames(path, new_path)
File "/Library/Python/2.7/site-packages/pip/utils/__init__.py", line 315, in renames
shutil.move(old, new)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 302, in move
copy2(src, real_dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 131, in copy2
copystat(src, dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 103, in copystat
os.chflags(dst, st.st_flags)
OSError: [Errno 1] Operation not permitted: '/tmp/pip-7dp3on-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'
В принципе, он не может обновить шесть с 1.4.1 до 1.9.0. Я попытался сделать это отдельно, но получил ту же ошибку.
Я упоминаю El Capitan, потому что некоторые люди сталкиваются с проблемами для другой установки python на El Capitan, и мне интересно, связано ли это с этим.
Кто-нибудь знает, как решить эту проблему?
Вот как я исправил проблемы:
Сначала установите Xcode CLI
:
xcode-select --install
Затем переустановите Python
:
sudo brew reinstall python
Наконец, установите nltk
:
sudo pip install -U nltk
Надеюсь, это поможет:)
Я знаю там множество ускорителей brew, но вам не нужно использовать другой python для чего-то такого основного. Если зависимость /t 20 > в/System, как говорится в South Park, у вас будет плохое время ". Если вам не нужно делать это изменение в рамках всей системы, вы можете просто pip install --user <package>
и добавить $HOME/Library/Python/2.7/bin
в свой путь к оболочке (через ~/.bash_profile
и т.д.).
оба из них приводят к шести версиям 1.41:
pip install --ignore-installed six
pip install awsebcli --upgrade --ignore-installed six
Обходной путь brew - тот, который имеет смысл, имо. Если Apple нуждается в собственной копии Python для El Capitan, она может иметь ее. Мой сейчас здесь: /usr/local/bin/python
Система Python не может быть обновлена или изменена с помощью pip из-за совершенно нового механизма защиты целостности системы, который отключает все изменения в системном каталоге даже "root". Вы можете отключить SIP из среды восстановления через маршруты, доступные в другом месте (например, http://www.howtogeek.com/230424/how-to-disable-system-integrity-protection-on-a-mac-and-why-you-shouldnt/), но лучшим решением является использование аргумента -ser для установите в свой локальный каталог:
pip install --user nltk
Затем вы оставите nltk в локальном домашнем каталоге.
> python
>>> import nltk
>>> nltk
>>> <module 'nltk' from '/Users/yourusername/Library/Python/2.7/lib/python/site-packages/nltk/__init__.pyc'>
Очевидно, что если вы пытаетесь установить что-то глобально доступное, что не будет работать, но если все, что вы пытаетесь сделать, это установить материал, который вы собираетесь запускать из своего собственного идентификатора пользователя, он отлично работает.
У меня была такая же проблема.
Я использую brew для управления пакетами. поэтому сначала вам нужно запустить
brew doctor
Он перечислит проблемы с вашей настройкой, исправьте их. В моем случае /usr/local не был доступен для записи, поэтому мне пришлось его исправить.
Затем запустите
brew reinstall python
Это устранило мою проблему, и тогда я смог установить пакеты с помощью pip
Alrighty 'then:
простая простая простая истина - это гибридный ответ нескольких других, изложенных здесь:
Аминь
Если вы уже создали каталог /usr/local, запустите эту команду в терминале:
sudo chown $(whoami): admin/usr/local && & & sudo chown -R $(whoami): admin/usr/local
от http://digitizor.com/2015/10/01/fix-homebrew-permissions-osx-el-capitan/