@@ -38,7 +38,7 @@ The following packages and tools are not required but extend the capabilities
38
38
of Matplotlib.
39
39
40
40
Backends
41
- ~~~~~~~~
41
+ ^^^^^^^^
42
42
43
43
Matplotlib figures can be rendered to various user interfaces. See
44
44
:ref: `what-is-a-backend ` for more details on the optional Matplotlib backends
@@ -73,14 +73,14 @@ and the capabilities they provide.
73
73
.. _ipykernel : https://pypi.org/project/ipykernel/
74
74
75
75
Animations
76
- ~~~~~~~~~~
76
+ ^^^^^^^^^^
77
77
78
78
* `ffmpeg <https://www.ffmpeg.org/ >`_: for saving movies.
79
79
* `ImageMagick <https://www.imagemagick.org/script/index.php >`_: for saving
80
80
animated gifs.
81
81
82
82
Font handling and rendering
83
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~
83
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^
84
84
85
85
* `LaTeX <https://www.latex-project.org/ >`_ (with `cm-super
86
86
<https://ctan.org/pkg/cm-super> `__ and `underscore
@@ -111,7 +111,7 @@ rasterize characters differently) and of Qhull. As an exception, Matplotlib
111
111
defaults to the system version of FreeType on AIX.
112
112
113
113
Use system libraries
114
- ~~~~~~~~~~~~~~~~~~~~
114
+ ^^^^^^^^^^^^^^^^^^^^
115
115
116
116
To force Matplotlib to use a copy of FreeType or Qhull already installed in
117
117
your system, create a :file: `mplsetup.cfg ` file with the following contents:
@@ -185,7 +185,7 @@ remember to clear your artifacts before re-building::
185
185
186
186
187
187
Manual Download
188
- ~~~~~~~~~~~~~~~
188
+ ^^^^^^^^^^^^^^^
189
189
190
190
191
191
If the automatic download does not work (for example on air-gapped systems) it
@@ -240,17 +240,65 @@ Setup dependencies
240
240
C++ compiler
241
241
------------
242
242
243
- Matplotlib requires a C++ compiler that supports C++11.
244
-
245
- - `gcc 4.8.1 <https://gcc.gnu.org/projects/cxx-status.html#cxx11 >`_ or higher. For gcc <6.5 you will
246
- need to set ``$CFLAGS=-std=c++11 `` to enable C++11 support.
247
- `Installing GCC: Binaries <https://gcc.gnu.org/install/binaries.html >`_.
248
- - `clang 3.3 <https://clang.llvm.org/cxx_status.html >`_ or higher.
249
- `LLVM Download Page <https://releases.llvm.org/download.html >`_.
250
- - `Visual Studio 2015
251
- <https://docs.microsoft.com/en-us/cpp/overview/visual-cpp-language-conformance?view=msvc-140> `_
252
- (aka VS 14.0) or higher. A free version of Build Tools for Visual Studio is available for
253
- `download <https://visualstudio.microsoft.com/downloads/?q=build+tools >`_.
243
+ Matplotlib requires a C++ compiler that supports C++11, and each platform has a
244
+ development environment that must be installed before a compiler can be installed.
245
+
246
+ .. tab-set ::
247
+
248
+ .. tab-item :: Linux
249
+
250
+ On some Linux systems, you can install a meta-build package. For example,
251
+ on Ubuntu ``apt install build-essential ``
252
+
253
+ Otherwise, use the system distribution's package manager to install
254
+ :ref: `gcc <compiler-table >`
255
+
256
+ .. tab-item :: OS/X
257
+
258
+ Install `xcode <https://developer.apple.com/xcode/ >`_ for Apple platform development
259
+
260
+ .. tab-item :: Windows
261
+
262
+ Install `Visual Studio Build Tools <https://visualstudio.microsoft.com/downloads/?q=build+tools >`_
263
+
264
+ Make sure "Desktop development with C++" is selected, and that the latest MSVC,
265
+ "C++ CMake tools for Windows," and a Windows SDK compatible with your version
266
+ of Windows are selected and installed. They should be selected by default under
267
+ the "Optional" subheading, but are required to build Matplotlib from source.
268
+
269
+ Alternatively, you can install a Linux like environment like `CygWin <https://www.cygwin.com/ >`_
270
+ or `Windows Subsystem for Linux <https://learn.microsoft.com/en-us/windows/wsl/install >`_.
271
+
272
+
273
+ We highly recommend that you install a compiler using your platform tool, .i.e.
274
+ xcode, vscode or linux package manager.
275
+
276
+ .. _compiler-table :
277
+
278
+ .. list-table ::
279
+ :widths: 20 20 20 40
280
+ :header-rows: 1
281
+
282
+ * - compiler
283
+ - minimum version
284
+ - platforms
285
+ -
286
+ * - GCC
287
+ - **4.8.1 **
288
+ - Linux, OS/X, Windows
289
+ - `gcc 4.8.1 <https://gcc.gnu.org/projects/cxx-status.html#cxx11 >`_,
290
+ `GCC: Binaries <https://gcc.gnu.org/install/binaries.html >`_,
291
+
292
+ For gcc <6.5 you will need to set ``$CFLAGS=-std=c++11 `` to enable C++11 support.
293
+ * - Clang (LLVM)
294
+ - **3.3 **
295
+ - Linux, OS/X
296
+ - `clang 3.3 <https://clang.llvm.org/cxx_status.html >`_, `LLVM <https://releases.llvm.org/download.html >`_
297
+ * - MSVC++
298
+ - **14.0 **
299
+ - Windows
300
+ - `Visual Studio 2015 C++ <https://docs.microsoft.com/en-us/cpp/overview/visual-cpp-language-conformance?view=msvc-140 >`_
301
+
254
302
255
303
256
304
.. _test-dependencies :
0 commit comments