[Matplotlib-devel] step-by-step to installling from source using conda?

Chris Barker - NOAA Federal chris.barker at noaa.gov
Sun Aug 6 16:18:53 EDT 2017


That's what I do, also.  For the installation from source I now use either
"pip install ." or "pip install -e .".


-e for development for sure. But pip will try to bring in missing
dependencies for you, which is less than ideal if you don't want a
conda-pip jumble.

I think pip -e has a --no-deps flag, or something like that, which is
useful.

On 2017/08/05 1:27 PM, Thomas Caswell wrote:

I sometimes take a blunter approach, install Matplotlib via conda and then
uninstall it which leaves behind the dependencies ;)


D-uh! I should have thought of that!

That may not get you all the build deps but it will be close.

Oh, and taking a look at the Vonda recipe would be a better way to get the
deps list:

https://github.com/conda-forge/matplotlib-feedstock/blob/master/recipe/meta.yaml

-CHB


Tom

On Sat, Aug 5, 2017 at 5:33 PM Klymak Jody <jklymak at uvic.ca <
mailto:jklymak at uvic.ca <jklymak at uvic.ca>>> wrote:

   Hi Chris.  Thanks so much. That'll be useful

   I think I was partially tricked by the fact that %matplotlib

   notebook wasn't working for master in a Jupiter notebook.   but I

   see now that it doesn't wrk for anyone so I guess I was installing

   things adequately ;-)

   Thanks again.   Jody

   Sent from my iPhone

   On Aug 5, 2017, at 14:22, Chris Barker <chris.barker at noaa.gov

   <mailto:chris.barker at noaa.gov <chris.barker at noaa.gov>>> wrote:

   This should be pretty straightforward, but MPL's dependencie are

   pretty complex. IN thoery, simplyL


   1) create an environment

   2) install the dev dependencies

   3) build away.


   but in fact, step (2) there is not so straightforward, so here we

   go...


   1) I recommend using conda-forge as a source of packages -- it is

   more up to date than defaults, and you are developing....


   conda config --add channels conda-forge


   2)  create an environment for doing your development:


   conda create -n mpl-dev python=3


   3) activate that environment:


   source activate mpl-dev


   4) install the requirements of mpl:


   OK -- this one is kinda messy for MPL. It has a lot of

   requirements that depend someone on which sub-packages you are

   going to build.


   but first you need pk-config, which MPL used to find/configure

   stuff on *nix systems.


   (you may have this from Brew already)


   conda install pkg-config


   python setup.py --requires doesn't work, as mpl does a lot of

   ative configuration.


   but:


   python ./setup.py dry-run


   will get you a good list:


   REQUIRED DEPENDENCIES AND EXTENSIONS

                    numpy: yes [not found. pip may install it below.]

                      six: yes [six was not found.pip will attempt to

   install

                           it after matplotlib.]

                 dateutil: yes [dateutil was not found. It is

   required for date

                           axis support. pip/easy_install may attempt to

                           install it after matplotlib.]

   backports.functools_lru_cache: yes [Not required]

             subprocess32: yes [Not required]

                     pytz: yes [pytz was not found. pip/easy_install may

                           attempt to install it after matplotlib.]

                   cycler: yes [cycler was not found.

   pip/easy_install may

                           attempt to install it after matplotlib.]

                  tornado: yes [tornado was not found. It is required

   for the

                           WebAgg backend. pip/easy_install may

   attempt to

                           install it after matplotlib.]

                pyparsing: yes [pyparsing was not found. It is

   required for

                           mathtext support. pip/easy_install may

   attempt to

                           install it after matplotlib.]

                   libagg: yes [pkg-config information for 'libagg'

   could not

                           be found. Using local copy.]

                 freetype: no  [The C/C++ header for freetype2

   (ft2build.h)

                           could not be found.  You may need to

   install the

                           development package.]

                      png: yes [version 1.6.26]

                    qhull: yes [pkg-config information for 'libqhull'

   could not

                           be found. Using local copy.]


   you don't want pip to try to install anything, so I created a

   requirements file (enclosed)


   conda install --file conda_requirements_dev.txt


   And now you should be able to build!


   python setup.py build


   Note that you won't get all the back-ends -- other dependencies

   need to be installed for that.


   BTW: it would be nice to have something like that

   conda_requirements_dev.txt  in the MPL repo -- the setup-tools

   stuff is way to tied into the build/packaging/installing system.


   HTH,


   -CHB



   On Tue, Jun 13, 2017 at 6:24 AM, Jody Klymak <jklymak at gmail.com

   <mailto:jklymak at gmail.com <jklymak at gmail.com>>> wrote:



       Hi all,


       I’m somewhat stymied trying to understand how to install

       matplotlib in a development environment using conda.


       I have MacOS, and I have brew gcc etc. I know how to set up a

       env in conda.


       I eventually want to be able to run the tests, so that I can

       stop uploading things with PEP8 errors etc.


       Sorry if this is too vague. I can start over again and send

       specific errors if that is easier, but I would bet someone has

       a step-by-step.


       Thanks, Jody



       _______________________________________________

       Matplotlib-devel mailing list

       Matplotlib-devel at python.org <mailto:Matplotlib-devel at python.org
<Matplotlib-devel at python.org>>

       https://mail.python.org/mailman/listinfo/matplotlib-devel





   --

   Christopher Barker, Ph.D.

   Oceanographer


   Emergency Response Division

   NOAA/NOS/OR&R (206) 526-6959 <tel:%28206%29%20526-6959
<%28206%29%20526-6959>>   voice

   7600 Sand Point Way NE (206) 526-6329 <tel:%28206%29%20526-6329
<%28206%29%20526-6329>>   fax

   Seattle, WA  98115 (206) 526-6317 <tel:%28206%29%20526-6317
<%28206%29%20526-6317>>      main reception


   Chris.Barker at noaa.gov <mailto:Chris.Barker at noaa.gov
<Chris.Barker at noaa.gov>>

   <conda_requirements_dev.txt>

   _______________________________________________

   Matplotlib-devel mailing list

   Matplotlib-devel at python.org <mailto:Matplotlib-devel at python.org
<Matplotlib-devel at python.org>>

   https://mail.python.org/mailman/listinfo/matplotlib-devel

   _______________________________________________

   Matplotlib-devel mailing list

   Matplotlib-devel at python.org <mailto:Matplotlib-devel at python.org
<Matplotlib-devel at python.org>>

   https://mail.python.org/mailman/listinfo/matplotlib-devel

_______________________________________________

Matplotlib-devel mailing list

Matplotlib-devel at python.org

https://mail.python.org/mailman/listinfo/matplotlib-devel


_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel at python.org
https://mail.python.org/mailman/listinfo/matplotlib-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/matplotlib-devel/attachments/20170806/b90a1c70/attachment-0001.html>


More information about the Matplotlib-devel mailing list