以非root身份安裝Python的Module或者Package以及pip安裝指定路徑
阿新 • • 發佈:2018-05-15
指定 packages string 沒有 ID lib pip安裝 ges roo
作者:麥兜胖胖次
鏈接:https://www.jianshu.com/p/92a109ddf695
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請註明出處。
因為要遠程訪問公司的服務器,沒有sudo的權限,所以在安裝python的一些包的時候就不能安去默認路徑了(比如以/usr/local/lib/為prefix的路徑)。
一般來講用easy_install或者pip來安裝的時候都默認在PATHONPATH的site-packages下面,比如/usr/lib64/python2.7/site-packages。
-
用pip
pip install --user package_name
-
用easy_install
easy_install --prefix=$HOME/local package_name
這樣就會安裝到$HOME/local/lib/pythonX.Y/site-packages中去。
別忘了這個路徑一定要加到環境變量PYTHONPATH中,不然之後import模塊的時候是找不到它的。
- pip指定路徑:
sudo pip install six --upgrade --target="/usr/lib/python2.7/dist-packages"
我在安裝tensorflow時發現sys.path會先找/usr/lib/python2.7/dist-packages,但是pip默認安裝在/usr/local/...下面,所以指定target是必要的,否則可能即使upgrade了在python執行時找的庫依然時沒升級的。
小禮物走
作者:麥兜胖胖次
鏈接:https://www.jianshu.com/p/92a109ddf695
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請註明出處。
以非root身份安裝Python的Module或者Package以及pip安裝指定路徑