2012-01-13 318 views
4

我目前正在使用Python Image Library編寫一個簡單的Python(2.7)程序。如何使我的程序可移植,以便可以在另一臺計算機上運行(尚未安裝PIL)。在Python中使用第三方庫

我研究過創建setup.py文件,但我不確定這是否在正確的軌道上。

+0

這取決於您的目標平臺,以及您希望安裝故事的樣子。 setup.py可以用來指定依賴關係,但它確實用於向其他開發者分發內容;你的用戶需要運行'python setup.py install',然後下載並安裝PIL。但是,如果你想分發一個包含所有依賴的文件,它會變得更加複雜(例如,你基本上會分發一個Python解釋器和stdlib的副本,再加上你的程序,再加上任何依賴)。 – AdamKG 2012-01-13 11:58:35

+0

什麼操作系統?如果它是一些Linux,你可能想要創建一個包,讓發行版的包管理器負責依賴。 – 2012-01-13 11:59:27

+0

理想情況下,Windows(7)和Ubuntu,認爲如果這太雄心勃勃,我會解決其中一個或另一個 – Landric 2012-01-13 12:04:08

回答

3

OK,聽起來像setup.py是去這裏的正確的方式 - 你應該已經有一個設置()函數中,添加一個install_requires項,像這樣:

setup(
    name="mypkg", version="0.0.1", 
    # etc etc blah blah blabh 
    install_requires=["PIL"], 
) 

應該這樣做!當您的用戶運行setup.py install時,它會下載PIL &運行PIL自己的安裝例程。

+0

男人,這一切都有它嗎?當我到達工作站時,我會測試這個,但現在,感謝您的回答 – Landric 2012-01-13 14:07:48

+0

這給了我'用戶警告:未知分發選項:'install_requires'' – Landric 2012-01-22 14:44:03

+1

您的setup()是distutils還是setuptools?它應該是setuptools。你還可以用'import setuptools來檢查你的setuptools版本; setuptools的.__ version__'? – AdamKG 2012-01-23 12:09:03