白森 发表于 2017-4-27 10:03:44

Python 套件管理工具

Python 套件管理工具
 
網路上找到一些資料,筆記一下

[*]distutils:
把套件下載回來,然後 python setup.py install ,這樣就裝好了
[*]setuptools:
可以使用 apt-get install python-setuptools 或是 wget -q http://peak.telecommunity.com/dist/ez_setup.py 下載這個 script 回來安裝 setuptools
安裝好之後,未來就使用 easy_install 這個工具來安裝套件

[*]easy_install SQLObject -> 安裝 SQLObject 這個套件
[*]easy_install 'SQLObject>=1.0' -> 如果 SQLObject 的最新版本小於 1.0,那麼就不安裝
[*]easy_install -f http://gnosis.cx/download/Gnosis_Utils.More/ Gnosis_Utils -> 安裝沒不支援 setuptools 的套件,他會自動重新打包成 egg 的格式然後安裝
[*]easy_install -f http://gnosis.cx/download/Gnosis_Utils.More/ "Gnosis_Utils==1.2.0" -> 安裝特定版本
[*]easy_install "Gnosis_Utils==1.2.1" -> 切換為指定版本
[*]easy_install -U Django -> 升級 Django 套件
[*]easy_install -m Django -> 移除 Django (只是從 easy-install.pth 拿掉而已,要自己清理 site-packages 裡面的目錄或檔案)

[*]pyinstall (已改名為 pip):
使用 easy_install pip 這樣就安裝好了,目前還沒仔細用過,只有看到別人的介紹

[*]所有套件都是由 source 開始編譯(FreeBSD ports like)
[*]所有相依套件都先下載回來再統一安裝,不會發生相依套件裝完然後主要套件裝不起來
[*]使用 bundle 可以將所有相依套件都封存在一個 bundle 內
[*]告訴你某個 package 為何會安裝(就像 freebsd 的 ports 有記錄這是某某套件的相依套件)
[*]支援 python 虛擬環境
[*]但是 pip 還在開發中,有些 package 的 setup.py 寫法限制,還是得用 easy_install 來安裝,純用pip 是無法安裝的

[*]yolk:
前面幾種方式可以方便的安裝新的套件,但是卻不能有效的管理現有的套件,這時候可以使用 yolk 來管理
一樣是使用 easy_install yolk 就可以安裝好這個工具

[*]yolk -l -> 列出這台機器所安裝的套件
[*]yolk -U -> 列出這台機器可以更新的套件及最新的版本
[*]yolk -F nose -T svn -> 將 nose 這個套件的最新 svn 版本抓下來放在 ./nose_svn
[*]yolk -M nose -> 列出 nose 這個套件的 meta 資訊(版本, 說明, 版權等)
[*]yolk -D ezpyinline -> 列出可以抓到 ezpyinline 這個套件的位址
[*]yolk -H nose -> 打開瀏覽器並連到 nose 這個套件的官方網站

页: [1]
查看完整版本: Python 套件管理工具