So I forked then cloned huge Basemap repository with idea to test latest code
README file says it needs geos library, which README suggest:
nmake /f makefile.vc MSVC_VER=1500
However, error is inevitable almost always and this time Google
suggests that MS does not support C-99 (can't find inttypes.h).
Easiest solution is to copy these:
https://code.google.com/p/msinttypes include files in affected include
folder and change line `#include ` in platform.h to
`#include "inttypes.h"` so it picks it up from current folder
That was it, geos compiled and products ended in src subfolder
relative to geos folder:
inlines.obj
geos.lib
geos_i.exp
geos_i.lib
geos.dll.manifest
geos.pdb
geos.ilk
geos.dll
geos_c_i.exp
geos_c_i.lib
geos_c.dll.manifest
geos_c.pdb
geos_c.ilk
geos_c.dll
Now, Basemap setup has *nix scenario for GEOS_DIR so I changed setup.py to:
geos_include_dirs=["C:\\Temp\\basemap\\GEOS-3~1.3\\capi","C:\\Temp\\basemap\\GEOS-3~1.3\\include",numpy.get_include()]
geos_library_dirs=["C:\\Temp\\basemap\\GEOS-3~1.3\\src"]
after I learned that `python setup.py build" fails if Basemap source
is in path with spaces
Still no luck, and thought to ask for kind help:
C:\Temp\basemap>python setup.py build
Found executable c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe
Found executable c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\link.exe
Found executable c:\Program Files\Microsoft SDKs\Windows\v7.0\bin\mt.exe
executing C:\Temp\basemap\nad2bin
lib\mpl_toolkits\basemap\data\alaska < datumgrid\alaska.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin
lib\mpl_toolkits\basemap\data\conus < datumgrid\conus.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin lib\mpl_toolkits\basemap\data\FL <
datumgrid\FL.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin
lib\mpl_toolkits\basemap\data\hawaii < datumgrid\hawaii.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin lib\mpl_toolkits\basemap\data\MD <
datumgrid\MD.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin lib\mpl_toolkits\basemap\data\null
< datumgrid\null.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin lib\mpl_toolkits\basemap\data\prvi
< datumgrid\prvi.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin
lib\mpl_toolkits\basemap\data\stgeorge < datumgrid\stgeorge.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin
lib\mpl_toolkits\basemap\data\stlrnc < datumgrid\stlrnc.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin
lib\mpl_toolkits\basemap\data\stpaul < datumgrid\stpaul.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin lib\mpl_toolkits\basemap\data\TN <
datumgrid\TN.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin lib\mpl_toolkits\basemap\data\WI <
datumgrid\WI.lla
Output Binary File Format: ctable2
executing C:\Temp\basemap\nad2bin lib\mpl_toolkits\basemap\data\WO <
datumgrid\WO.lla
Output Binary File Format: ctable2
running build
running config_cc
unifing config_cc, config, build_clib, build_ext, build commands
--compiler options
running config_fc
unifing config_fc, config, build_clib, build_ext, build commands
--fcompiler options
running build_src
build_src
building extension "mpl_toolkits.basemap._proj" sources
building extension "_geoslib" sources
build_src: building npy-pkg config files
running build_py
copying lib\mpl_toolkits\__init__.py -> build\lib.win32-2.7\mpl_toolkits
copying lib\mpl_toolkits\basemap\accumulator.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\cm.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\constants.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\geodesic.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\geodesiccapability.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\geodesicline.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\geomath.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\polygonarea.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\proj.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\pyproj.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\shapefile.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\solar.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\test.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\__init__.py ->
build\lib.win32-2.7\mpl_toolkits\basemap
copying lib\mpl_toolkits\basemap\data\alaska ->
build\l