Note that there are some explanatory texts on larger screens.

plurals
  1. PODeploy matplotlib on heroku failed. How to do this correctly?
    primarykey
    data
    text
    <p>I've install matplotlib in my virtualenv using pip. It was a failure at the beginning, but after I do <code>easy_install -U distribute</code>, the installation goes smoothly.</p> <p>Here is what I do (inside my git repository root folder):</p> <pre><code>virtualenv env source env/bin/activate pip install gunicorn pip install numpy easy_install -U distribute pip install matplotlib </code></pre> <p>Then, I make a requirements.txt by using <code>pip freeze &gt; requirements.txt</code>. Here is the result:</p> <pre><code>argparse==1.2.1 distribute==0.7.3 gunicorn==17.5 matplotlib==1.3.0 nose==1.3.0 numpy==1.7.1 pyparsing==2.0.1 python-dateutil==2.1 six==1.3.0 tornado==3.1 wsgiref==0.1.2 </code></pre> <p>Problem happened when I try to deploy my application:</p> <pre><code>(env)gofrendi@kirinThor:~/kokoropy$ git push -u heroku Counting objects: 9, done. Delta compression using up to 2 threads. Compressing objects: 100% (5/5), done. Writing objects: 100% (5/5), 586 bytes, done. Total 5 (delta 3), reused 0 (delta 0) -----&gt; Python app detected -----&gt; No runtime.txt provided; assuming python-2.7.4. -----&gt; Using Python runtime (python-2.7.4) -----&gt; Installing dependencies using Pip (1.3.1) Downloading/unpacking distribute==0.7.3 (from -r requirements.txt (line 2)) Running setup.py egg_info for package distribute Downloading/unpacking matplotlib==1.3.0 (from -r requirements.txt (line 4)) Running setup.py egg_info for package matplotlib The required version of distribute (&gt;=0.6.28) is not available, and can't be installed while this script is running. Please install a more recent version first, using 'easy_install -U distribute'. (Currently using distribute 0.6.24 (/app/.heroku/python/lib/python2.7/site-packages)) Complete output from command python setup.py egg_info: The required version of distribute (&gt;=0.6.28) is not available, and can't be installed while this script is running. Please install a more recent version first, using 'easy_install -U distribute'. (Currently using distribute 0.6.24 (/app/.heroku/python/lib/python2.7/site-packages)) ---------------------------------------- Command python setup.py egg_info failed with error code 2 in /tmp/pip-build-u55833/matplotlib Storing complete log in /app/.pip/pip.log ! Push rejected, failed to compile Python app To git@heroku.com:kokoropy.git ! [remote rejected] master -&gt; master (pre-receive hook declined) error: failed to push some refs to 'git@heroku.com:kokoropy.git' (env)gofrendi@kirinThor:~/kokoropy$ </code></pre> <p>Seems that heroku server can't install matplotlib correctly.</p> <p>When I do <code>easy_install -U distribute</code> it might not being recorded by pip. </p> <p>Matplotlib also has several non-python-library dependencies (such as: libjpeg8-dev, libfreetype and libpng6-dev). I can install those dependencies locally (e.g: via <code>apt-get</code>). However, this also not being recorded by pip.</p> <p>So, my question is: how to correctly install matplotlib in heroku deployment server?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload