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

Eric Firing efiring at hawaii.edu
Sun Aug 6 13:29:49 EDT 2017


That's what I do, also.  For the installation from source I now use 
either "pip install ." or "pip install -e .".  Depending on how much I 
am changing (e.g., switching from maintenance to master, or back), I do 
"pip uninstall matplotlib" and "git clean -dfx" (only with all desired 
changes committed, of course) to clean out the old version before 
installing the new.

At least on a Mac, there can still be some bogus test failures.

Eric

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 ;)
> 
> Tom
> 
> On Sat, Aug 5, 2017 at 5:33 PM Klymak Jody <jklymak at uvic.ca 
> <mailto: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>> 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>> 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>
>>         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>   voice
>>     7600 Sand Point Way NE (206) 526-6329 <tel:%28206%29%20526-6329>   fax
>>     Seattle, WA  98115 (206) 526-6317 <tel:%28206%29%20526-6317>  
>>     main reception
>>
>>     Chris.Barker at noaa.gov <mailto:Chris.Barker at noaa.gov>
>>     <conda_requirements_dev.txt>
>>     _______________________________________________
>>     Matplotlib-devel mailing list
>>     Matplotlib-devel at python.org <mailto: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>
>     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
> 



More information about the Matplotlib-devel mailing list