node-mapserver icon indicating copy to clipboard operation
node-mapserver copied to clipboard

Got it working for Windows 8.1 64bit

Open traderboy opened this issue 11 years ago • 0 comments

I'm only using this locally in development, not in production. I used the same procedure to get https://github.com/geo-data/node-mapserv working on Win8.1 64. There are likely better ways to do this.

  1. Download node-mapserver
  2. Install Visual Studio Express.
  3. Install Mapserver 64 bit headers and libraries from http://archive.gisinternals.com/sdk/. I used http://archive.gisinternals.com/sdk/Download.aspx?file=release-1600-x64-gdal-1-11-1-mapserver-6-4-1-libs.zip. Unzip to a folder which will be specified in binding.gyp.
  4. Use a modified binding.gyp (parts copied from the node-mapserv project). Pasted at bottom of post.
  5. Open a VS x64 Cross Tools Command prompt. Make sure python can be found in your path.
  6. cd to the node-mapserver folder and type "npm install ." Hopefully it compiles.
  7. Make sure you have the correct GDAL/Mapserver binaries installed/unzipped (http://archive.gisinternals.com/sdk/Download.aspx?file=release-1600-x64-gdal-1-11-1-mapserver-6-4-1.zip), run the SDKShell.bat file to set the environment variables, then type "node examples\mapserv.js" and open browser to http://localhost:8080. I had to inline the PROJECTION on line 17 in the gmap75.map file since I got an error: proj error "Permission denied" for "init=epsg:42304". I used: "proj=lcc" "lat_1=49" "lat_0=49" "lon_0=-95" "k_0=1" "x_0=0" "y_0=0" "ellps=GRS80" "datum=NAD83" "units=m" "no_defs"

Here's the binding.gyp I used. Note the path to the unzipped Mapserver headers and libraries in the ms_buildkit and ms_root section under Variables must match your machine.

{ "targets": [ { "target_name": "mapserver", "sources": [ "src/mapserver.cpp", "src/ms_error.cpp", "src/ms_layer.cpp", "src/ms_layers.cpp", "src/ms_map.cpp", "src/ms_outputformat.cpp", "src/ms_point.cpp", "src/ms_projection.cpp", "src/ms_hashtable.cpp", "src/ms_rect.cpp" ], "include_dirs": [ "<!@(python tools/config.py --include)" ], "conditions": [ ['OS=="linux"', { 'ldflags': [ '-Wl,--no-as-needed,-lmapserver', '<!@(python tools/config.py --ldflags)' ], 'libraries': [ '<!@(python tools/config.py --libraries)' ], 'cflags': [ '<!@(python tools/config.py --cflags)', '-Wall' ] }], ['OS=="win"', { "variables": { 'ms_buildkit%': 'C:/src/node_modules/mapserv/sdk', 'ms_root%': 'C:/src/node_modules/mapserv/sdk' }, "include_dirs" : [ "<(ms_root)/", "<(ms_buildkit)/include/" ], "libraries" : [ '<(ms_root)/lib/mapserver.lib', '<(ms_buildkit)/lib/gdal_i.lib', '<(ms_buildkit)/lib/agg.lib', '<(ms_buildkit)/lib/cairo.lib', '<(ms_buildkit)/lib/cfitsio.lib', '<(ms_buildkit)/lib/fontconfig.lib', '<(ms_buildkit)/lib/freetype239.lib', '<(ms_buildkit)/lib/freexl.lib', '<(ms_buildkit)/lib/freexl_i.lib', '<(ms_buildkit)/lib/fribidi.lib', '<(ms_buildkit)/lib/ftgl.lib', '<(ms_buildkit)/lib/gd.lib', '<(ms_buildkit)/lib/gdal_i.lib', '<(ms_buildkit)/lib/geos_c.lib', '<(ms_buildkit)/lib/giflib.lib', '<(ms_buildkit)/lib/hdf5dll.lib', '<(ms_buildkit)/lib/iconv.lib', '<(ms_buildkit)/lib/libcurl_imp.lib', '<(ms_buildkit)/lib/libeay32.lib', '<(ms_buildkit)/lib/libecwj2.lib', '<(ms_buildkit)/lib/libexpat.lib', '<(ms_buildkit)/lib/libfcgi.lib', '<(ms_buildkit)/lib/libjbig.lib', '<(ms_buildkit)/lib/libjpeg.lib', '<(ms_buildkit)/lib/libming.lib', '<(ms_buildkit)/lib/libmysql.lib', '<(ms_buildkit)/lib/libpng.lib', '<(ms_buildkit)/lib/libpq.lib', '<(ms_buildkit)/lib/libpqdll.lib', '<(ms_buildkit)/lib/libtiff_i.lib', '<(ms_buildkit)/lib/libxml2.lib', '<(ms_buildkit)/lib/minizip.lib', '<(ms_buildkit)/lib/netcdf.lib', '<(ms_buildkit)/lib/openjp2.lib', '<(ms_buildkit)/lib/openjpeg.lib', '<(ms_buildkit)/lib/openjpegstatic.lib', '<(ms_buildkit)/lib/pdflib.lib', '<(ms_buildkit)/lib/pixman-1.lib', '<(ms_buildkit)/lib/poppler.lib', '<(ms_buildkit)/lib/proj.lib', '<(ms_buildkit)/lib/proj_i.lib', '<(ms_buildkit)/lib/spatialite.lib', '<(ms_buildkit)/lib/spatialite_i.lib', '<(ms_buildkit)/lib/sqlite3_i.lib', '<(ms_buildkit)/lib/ssleay32.lib', '<(ms_buildkit)/lib/vld.lib', '<(ms_buildkit)/lib/xerces-c_2.lib', '<(ms_buildkit)/lib/zdll.lib', '<(ms_buildkit)/lib/zlib.lib', '<(ms_buildkit)/lib/proj.lib' ] }], ] }

] }

traderboy avatar Dec 26 '14 14:12 traderboy