[英]Unable to install nltk on Mac OS El Capitan
我按照nltk文檔的建議做了sudo pip install -U 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是因為有些人在El Capitan上遇到其他python安裝的問題,我想知道這是否是由於這個原因。
有誰知道如何解決這個問題?
以下是我解決問題的方法:
首先,安裝Xcode CLI
:
xcode-select --install
然后重新安裝Python
:
sudo brew reinstall python
最后,安裝nltk
:
sudo pip install -U nltk
希望能幫助到你 :)
我知道那里有很多'釀造助推器',但你不應該使用另一個python來做一些基本的東西。 如果依賴是通過發現pip
/ System中,因為他們在南園說:“你將有一個壞的時間”。 如果您不需要在系統范圍內進行此更改,則只需pip install --user <package>
並將$HOME/Library/Python/2.7/bin
到shell路徑(通過~/.bash_profile
等。 )。
這兩個都導致六個版本1.41:
pip install --ignore-installed six
pip install awsebcli --upgrade --ignore-installed six
brew解決方案是有意義的,imo。 如果Apple需要自己的El Capitan Python副本,它可以擁有它。 我現在在這里: /usr/local/bin/python
由於全新的系統完整性保護機制甚至“root”禁用了對系統目錄的所有更改,因此無法通過pip升級或更改系統Python。 您可以通過其他地方提供的指示從恢復環境中禁用SIP(例如http://www.howtogeek.com/230424/how-to-disable-system-integrity-protection-on-a-mac-and-why-you-不應該/ )但更好的解決方案是使用--user參數安裝到您的本地目錄:
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'>
顯然,如果你試圖安裝全局可訪問的東西是行不通的,但是如果你要做的就是安裝你將從你自己的用戶ID運行的東西,那么它可以正常工作。
我遇到過同樣的問題。 我用brew來管理包。 所以首先你必須運行brew doctor
它將列出你的設置問題,糾正它們。 在我的情況下/ usr / local不可寫,所以我不得不修復它
然后跑
brew reinstall python
這解決了我的問題,然后我可以使用pip安裝包
好吧'然后 :
簡單簡單的事實就是這里提出的其他幾個人的混合答案:
阿門
如果您已經創建了/ 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/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.