2012-02-14 159 views
0

按照learnpythonthehardway教程試圖安裝nosetests,我遇到了問題。任何我應該嘗試下一步的線索?如果我有保存在一個隨機位置在我的電腦上的東西,可以把它導入到python腳本,無論它在哪裏:安裝nosetests - 權限被拒絕

$ easy_install nose 
Searching for nose 
Best match: nose 1.1.2 
Processing nose-1.1.2-py2.6.egg 
nose 1.1.2 is already the active version in easy-install.pth 
Installing nosetests-2.6 script to /usr/local/bin 
error: /usr/local/bin/nosetests-2.6: Permission denied` 

一個關於安裝,我的問題嗎?因此,如果我執行名爲「projects」的文件夾中的runthis.py,並且我有from setup tools import setup作爲該程序的第一行,那麼setup tools必須在python的特定位置(如「projects」文件夾)才能找到它?

回答

2

你能用sudo嗎?

如果是這樣,只需使用sudo easy_install nose以root身份安裝即可。

如果沒有,您需要安裝的地方,你可以寫,而不是你沒有權限修改默認位置。這可以通過traditional的方式輕鬆完成,或者使用virtualenv來完成,最初可能有點麻煩。

至於第二個問題,python只能找到sys.path中找到的目錄中的東西,默認情況下,該目錄設置爲PYTHONPATH環境變量的內容以及已安裝的python自己的庫目錄。

+0

這裏就是我得到的打字時,在:'$ sudo的 用法:須藤[-n] -h | -K | -k | -L | -V | -v 用法:須藤-l [1] [-AnS] [-g組名| #GID] [-U用戶名] [-u用戶名| #uid] [-g組名| #GID] [命令] 用法:sudo [-AbEHnPS] [-C fd] [-g groupname | #gid] [-p提示] [-u username | #uid] [-g groupname | #gid] [VAR = value] [-i | -s] [] 用法:sudo -e [-AnS] [-C fd] [ - g groupname | #gid] [-p提示] [-u username | #uid]文件...' 我不太確定'sys.path'是什麼;我之前沒有聽說過PYTHONPATH(對不起,我對此很陌生)。儘管感謝您的幫助! – ZCJ 2012-02-14 03:50:18

+1

@ZCJ:編輯我的答案。 – geoffspear 2012-02-14 03:55:25

+0

哇,謝謝你的建議 - 「nosetests」現在正在工作。 – ZCJ 2012-02-14 04:16:17

1

它往往是(高度!)建議設置包的自己的「本地」儲存庫中,任何一種語言,系統正在使用(無論是Python或其他)。保留「系統安裝」的軟件包,無論它們是什麼,完全是單獨的......萬一某些超級重要的系統工具(軟件包管理器,任何人?)也可能正在使用它們並可能依賴於它們。

這樣做的方式因語種而異,但他們會被記錄在的某處都一樣。您甚至可能會發現您使用的「發行版」已經預見到此要求,並且已經預留了一些商定的位置,例如「/ usr/local/...」僅供您個人使用。

+0

我明白了。你能給我一個「本地」存儲庫的例子嗎? Wooble的上述評論說,我不能讓他們在任何地方;我應該在哪裏保存這些文件?似乎我應該只有一個目錄,如「Python包」,並養成在這裏安裝它們的習慣。 – ZCJ 2012-02-14 04:44:41