Martin Spacek wrote: > It's been a few months since I've updated and compiled from svn. I got > this error today from rev 3926 (in winxp using msvc71): > >> python setup.py build_ext --inplace --force > > ============================================================================ > BUILDING MATPLOTLIB > matplotlib: 0.90.1 > python: 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC > v.1310 32 bit (Intel)] > platform: win32 > Windows version: (5, 1, 2600, 2, 'Service Pack 2') > > REQUIRED DEPENDENCIES > numpy: 1.0.4.dev4155 > freetype2: found, but unknown version (no pkg-config) > > OPTIONAL DEPENDENCIES > Gtk+: no > * Building for Gtk+ requires pygtk; you must be > able > * to "import gtk" in your build/install environment > Tkinter: Tkinter: 50704, Tk: 8.4, Tcl: 8.4 > wxPython: 2.8.4.0 > * WxAgg extension not required for wxPython >= 2.8 > Qt: no > Qt4: no > Cairo: no > libpng: found, but unknown version (no pkg-config) > > [Edit setup.cfg to suppress the above messages] > ============================================================================ > running build_ext > No module named msvccompiler in numpy.distutils; trying from distutils > building 'matplotlib.ft2font' extension > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > Iwin32_static\include\freetype2 -I.\freetype2 -IC:\bin\Python25\include > -IC:\bin\Python25\PC /Tpsrc/ft2font.cpp /Fobuild > \temp.win32-2.5\Release\src/ft2font.obj > Found executable C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > Iwin32_static\include\freetype2 -I.\freetype2 -IC:\bin\Python25\include > -IC:\bin\Python25\PC /Tpsrc/mplutils.cpp /Fobuil > d\temp.win32-2.5\Release\src/mplutils.obj > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > Iwin32_static\include\freetype2 -I.\freetype2 -IC:\bin\Python25\include > -IC:\bin\Python25\PC /TpCXX\cxxsupport.cxx /Fobu > ild\temp.win32-2.5\Release\CXX\cxxsupport.obj > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > Iwin32_static\include\freetype2 -I.\freetype2 -IC:\bin\Python25\include > -IC:\bin\Python25\PC /TpCXX\cxx_extensions.cxx / > Fobuild\temp.win32-2.5\Release\CXX\cxx_extensions.obj > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > Iwin32_static\include\freetype2 -I.\freetype2 -IC:\bin\Python25\include > -IC:\bin\Python25\PC /TpCXX\IndirectPythonInterf > ace.cxx /Fobuild\temp.win32-2.5\Release\CXX\IndirectPythonInterface.obj > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > Iwin32_static\include\freetype2 -I.\freetype2 -IC:\bin\Python25\include > -IC:\bin\Python25\PC /TcCXX\cxxextensions.c /Fob > uild\temp.win32-2.5\Release\CXX\cxxextensions.obj > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\link.exe /DLL /nologo > /INCREMENTAL:NO /LIBPATH:win32_static\lib /LIBPAT > H:C:\bin\Python25\libs /LIBPATH:C:\bin\Python25\PCBuild freetype.lib > z.lib /EXPORT:initft2font build\temp.win32-2.5\Rele > ase\src/ft2font.obj build\temp.win32-2.5\Release\src/mplutils.obj > build\temp.win32-2.5\Release\CXX\cxxsupport.obj build\ > temp.win32-2.5\Release\CXX\cxx_extensions.obj > build\temp.win32-2.5\Release\CXX\IndirectPythonInterface.obj build\temp.wi > n32-2.5\Release\CXX\cxxextensions.obj /OUT:lib\matplotlib\ft2font.pyd > /IMPLIB:build\temp.win32-2.5\Release\src\ft2font.l > ib > Found executable C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\link.exe > building 'matplotlib.ttconv' extension > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > IC:\bin\Python25\include -IC:\bin\Python25\PC /Tpsrc/_ttconv.cpp > /Fobuild\temp.win32-2.5\Release\src/_ttconv.obj > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > IC:\bin\Python25\include -IC:\bin\Python25\PC /Tpttconv/pprdrv_tt.cpp > /Fobuild\temp.win32-2.5\Release\ttconv/pprdrv_tt.o > bj > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > IC:\bin\Python25\include -IC:\bin\Python25\PC /Tpttconv/pprdrv_tt2.cpp > /Fobuild\temp.win32-2.5\Release\ttconv/pprdrv_tt2 > .obj > C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe /c /nologo /Ox > /MD /W3 /GX /DNDEBUG -Iwin32_static\include -I. - > IC:\bin\Python25\include -IC:\bin\Python25\PC /Tpttconv/ttutil.cpp > /Fobuild\temp.win32-2.5\Release\ttconv/ttutil.obj > ttutil.cpp > ttconv\ttutil.cpp(38) : error C3861: 'vsnprintf': identifier not found, > even with argument-dependent lookup > ttconv\ttutil.cpp(45) : error C3861: 'vsnprintf': identifier not found, > even with argument-dependent lookup > error: Command "C:\bin\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe > /c /nologo /Ox /MD /W3 /GX /DNDEBUG -Iwin32_stat > ic\include -I. -IC:\bin\Python25\include -IC:\bin\Python25\PC > /Tpttconv/ttutil.cpp /Fobuild\temp.win32-2.5\Release\ttcon > v/ttutil.obj" failed with exit status 2 > > > > The latest change for ttutil.cpp was: > > Revision: 3696 > Author: cmoad > Date: 5:53:21 AM, Friday, August 10, 2007 > Message: > added win32 checks for vsnprintf which is _vsnprintf on windows > ---- > Modified : /trunk/matplotlib/ttconv/ttutil.cpp > > So it looks like both the lines that check #ifdef WIN32 are evaluating > as false, even though I'm in win32. I don't know much about C++. As a > hack, replacing vsnprintf with _vsnprintf in the else clauses gives me a > successful build.
Hmm... I wonder if the WIN32 symbol is a Mingw32 thing and not a MS Visual Studio thing. One thing I have seen elsewhere is the use of _MSC_VER to do this. Would you mind trying: #ifdef WIN32 || _MSC_VER instead of #ifdef WIN32 (I don't have a MS Visual Studio to test with myself). Maybe one of the Windows guys on this list has another idea as well. > Also, perhaps the pre-built freetype and libpng static libraries should > be updated in http://matplotlib.sourceforge.net/win32_static_vs.tar.gz > to get rid of the "found, but unknown version (no pkg-config)" warnings? I'm not sure that's possible. What that message means is that it couldn't use pkg-config (a standard Unix-y tool for finding build requirements) to find those libraries, which also provides the matplotlib build with version information. It would be difficult to get version information out of the header files otherwise. It's unlikely to have pkg-config on Windows, if not using Cygwin or Mingw. We could hide those warnings when building with MS Visual Studio, but I actually think it's useful to know that pkg-config was not used to find the library. We certainly could reword the warning, however, if you have any suggestions. Cheers, Mike -- Michael Droettboom Science Software Branch Operations and Engineering Division Space Telescope Science Institute Operated by AURA for NASA ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel