Skip to content

Got it working for Windows 8.1 64bit #6

@traderboy

Description

@traderboy

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'
]
}],
]
}

]
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions