Matplotlib Build Problem: Error C1083: Cannot open include file: 'ft2build.h'
Solution 1
Have you installed freetype properly? If you have, there should be a file named ft2build.h
somewhere under the installation directory, and the directory where that file is found is the one that you should specify with -I
. The string "GnuWin32" does not appear anywhere in the output of your build command, so it looks like you have not placed that directory in the correct include list.
Solution 2
This error comes about when building matplotlib on Ubuntu 10.10 also. The solution is to do:
sudo apt-get install python-dev libfreetype6-dev
Solution 3
Another solution for Mac OS X is to install Freetype with Homebrew.
brew install freetype
Solution 4
I was able to solve this on Windows by doing the following:
set INCLUDE=%INCLUDE%;C:\tmp\msvcr90-x32
set LIB=%LIB%;C:\tmp\msvcr90-x32
pip.exe install matplotlib
The link libraries for Freetype on windows can be found here: http://www.lfd.uci.edu/~gohlke/pythonlibs/#matplotlib (from meawoppl's comment)
Just download the "matplotlib‑1.x‑windows‑link‑libraries.zip", and open the README from the zip.
Solution 5
This question comes up high in Google for this error, so like several others I'll ignore the fact that it's asking about Windows only.
On Debian 10 (Buster) I had to do:
sudo apt install libfreetype6-dev pkg-config
Note the pkg-config
dependency; without it, the FreeType headers get installed, but matplotlib is unable to find them. It warns about this before spitting out pages of output, so it's easy to miss:
IMPORTANT WARNING:
pkg-config is not installed.
matplotlib may not be able to find some of its dependencies
![Admin](/assets/logo_square_200-5d0d61d6853298bd2a4fe063103715b4daf2819fc21225efa21dfb93e61952ea.png)
Admin
Updated on March 23, 2020Comments
-
Admin over 4 years
ft2build.h is located here:
C:\Program Files\GnuWin32\include
Initially, I made the same mistake as here:
Fatal Error C1083: Cannot Open Include file: 'tiffio.h': No such file or directory VC++ 2008
but since then, I've corrected that particular error (I've added the above directory to the "include" list, rather than the "executables" list), but I still get an error. The complete output is this:
BUILDING MATPLOTLIB matplotlib: 0.98.5.2 python: 2.6.2 Stackless 3.1b3 060516 (release26-maint, Apr 14 2009, 21:19:36) [MSC v.1500 32 bit (Intel)] platform: win32 Windows version: (5, 1, 2600, 2, 'Service Pack 3') REQUIRED DEPENDENCIES numpy: 1.3.0 freetype2: found, but unknown version (no pkg-config) * WARNING: Could not find 'freetype2' headers in any * of '.', '.\freetype2'. OPTIONAL BACKEND DEPENDENCIES libpng: found, but unknown version (no pkg-config) * Could not find 'libpng' headers in any of '.' Tkinter: no * No tk/win32 support for this python version yet wxPython: 2.8.9.2 * WxAgg extension not required for wxPython >= 2.8 Gtk+: no * Building for Gtk+ requires pygtk; you must be able * to "import gtk" in your build/install environment Mac OS X native: no Qt: no Qt4: no Cairo: no OPTIONAL DATE/TIMEZONE DEPENDENCIES datetime: present, version unknown dateutil: matplotlib will provide pytz: matplotlib will provide OPTIONAL USETEX DEPENDENCIES dvipng: no ghostscript: no latex: no pdftops: no [Edit setup.cfg to suppress the above messages] ============================================================================ pymods ['pylab'] packages ['matplotlib', 'matplotlib.backends', 'matplotlib.projections', 'mpl_to olkits', 'matplotlib.numerix', 'matplotlib.numerix.mlab', 'matplotlib.numerix.ma ', 'matplotlib.numerix.npyma', 'matplotlib.numerix.linear_algebra', 'matplotlib. numerix.random_array', 'matplotlib.numerix.fft', 'matplotlib.delaunay', 'pytz', 'dateutil', 'dateutil/zoneinfo'] running build running build_py copying lib\matplotlib\mpl-data\matplotlibrc -> build\lib.win32-2.6\matplotlib\m pl-data copying lib\matplotlib\mpl-data\matplotlib.conf -> build\lib.win32-2.6\matplotli b\mpl-data running build_ext building 'matplotlib.ft2font' extension C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W 3 /GS- /DNDEBUG -IC:\Python26\lib\site-packages\numpy\core\include -I. -IC:\Pyth on26\lib\site-packages\numpy\core\include\freetype2 -I.\freetype2 -IC:\Python26\ include -IC:\Python26\include\Stackless -IC:\Python26\PC /Tpsrc/ft2font.cpp /Fob uild\temp.win32-2.6\Release\src/ft2font.obj ft2font.cpp C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\xlocale(342) : warning C 4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc c:\python26\lib\site-packages\matplotlib-0.98.5.2\src\ft2font.h(13) : fatal erro r C1083: Cannot open include file: 'ft2build.h': No such file or directory error: command '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe"' fa iled with exit status 2
I should mention that this is Python 2.6
-
Chris Lawlor about 13 yearsThe OP is on windows, so probably not too helpful to him, but +1 for helping me sort this out on my machine.
-
meawoppl about 11 yearsWhen on windows consider using pre-built binaries. This repository of unoffical binaries has been a lifesaver for me.
-
boileau over 3 yearsOn Ubuntu 20.4 I also needed the pkg-config package.
-
Dmitrii Rashchenko about 2 yearsDepending on python version you use, instead of
python-dev
something likepython3-dev
orpython3.9-dev
may be required.