2017-10-06 143 views

回答

0

您將無法使用requirements.txt解決此問題。什麼PIP(大約)確實,當它遇到你的要求的文件:

  1. 它讀取包那裏列出
  2. 每個包下載,如果以源代碼形式
  3. 只有現在,該軟件包正在安裝

現在,kivy需要安裝cython才能夠建立(步驟2),但是此時cython只能下載並且未安裝。這是那種有雞還是先有蛋的問題,其一般可以通過運行pip兩次來解決的:第一

$ pip install cython 

然後

$ pip install kivy 

但是,試圖安裝在一個通kivycythonrelated kivy issue ),例如運行

$ pip install cython kivy 

會失敗,這正是heroku所做的。您應該使用Pipfile而不是一次性重新安裝失敗的依賴關係。所以,在我們的例子中requirements.txt

cython==0.27.1 
kivy==1.10.0 

成爲Pipfile

[[source]] 
url = "https://pypi.python.org/simple" 
verify_ssl = true 

[packages] 
cython = "==0.27.1" 
kivy = "==1.10.0" 

[requires] 
python_version = "3.6" 
相關問題