{"id":15131385,"url":"https://github.com/mapserver/mapserver","last_synced_at":"2025-05-14T10:11:15.876Z","repository":{"id":2912165,"uuid":"3921611","full_name":"MapServer/MapServer","owner":"MapServer","description":"Source code of the MapServer project.  Please submit pull requests to the 'main' branch.","archived":false,"fork":false,"pushed_at":"2025-04-03T18:18:45.000Z","size":75311,"stargazers_count":1085,"open_issues_count":285,"forks_count":381,"subscribers_count":83,"default_branch":"main","last_synced_at":"2025-04-03T20:43:58.724Z","etag":null,"topics":["c","engine","foss4g","gdal","geospatial","gml","map","mapping","mapserver","ogc","ogc-api","ogc-services","osgeo","sos","speed","wcs","web","web-mapping","wfs","wms"],"latest_commit_sha":null,"homepage":"https://mapserver.org","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MapServer.png","metadata":{"files":{"readme":"README.WIN32","changelog":"HISTORY.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["OSGeo"],"custom":"https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=KRJ2X44N3HA6U\u0026source=url"}},"created_at":"2012-04-03T19:10:40.000Z","updated_at":"2025-04-03T19:58:16.000Z","dependencies_parsed_at":"2023-02-15T23:00:41.633Z","dependency_job_id":"fe4588a6-b559-46b2-8732-7cf9e8dc9d36","html_url":"https://github.com/MapServer/MapServer","commit_stats":{"total_commits":12569,"total_committers":172,"mean_commits":73.07558139534883,"dds":0.8586999761317528,"last_synced_commit":"98ff88773eb3911ad5a5fa5a06d3746c6cc3ecb5"},"previous_names":[],"tags_count":210,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MapServer%2FMapServer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MapServer%2FMapServer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MapServer%2FMapServer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MapServer%2FMapServer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MapServer","download_url":"https://codeload.github.com/MapServer/MapServer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248338026,"owners_count":21087150,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","engine","foss4g","gdal","geospatial","gml","map","mapping","mapserver","ogc","ogc-api","ogc-services","osgeo","sos","speed","wcs","web","web-mapping","wfs","wms"],"created_at":"2024-09-26T03:41:27.485Z","updated_at":"2025-04-11T03:36:52.569Z","avatar_url":"https://github.com/MapServer.png","language":"C","readme":"--------------------------------------------------------------------\nREADME.WIN32 - Microsoft Visual C++ Build instructions for MapServer\n--------------------------------------------------------------------\n\nIMPORTANT - READ THIS FIRST:\n----------------------------\n\n  The Win32 build process is not very friendly for unexperienced users.\n  So it is strongly recommended that you use one of the precompiled \n  binaries available on the MapServer site:\n \n    http://www.mapserver.org/download.html#windows\n\n  There are precompiled Win32 binaries available for the last stable\n  release and the latest nightly build and they include the most common\n  options... so you shouldn't have to compile your own executables.\n\n  If for some reason you still decide to compile Win32 binaries yourself,\n  then don't do it unless you really know what you're doing... and\n  hopefully the rest of this file contains some hints that may help \n  you.  Good Luck!\n\n--------------------------------------------------------------------\n\nThe easyest way to build Mapserver on Windows on your own is to use the\nbuild-system from http://gisinternals.com/.\nGISInternals provide a complete set of sources and dependencies and even\nmakefiles for the full version of Visual Studio (not Express or Community).\nYou don't have to download and compile them all by your own.\n\nIf you are not using full version of Visual Studio you can not use the makefiles\nfrom GISInternals but you can still use the downloads to make your life easier.\n\nBuilding with the full version of Visual Studio is easy.\nDownload the SDK for you version and follow the readme inside the packages.\n\nThis Readme will cover the compilation with Visual Studio 2012 Express on\nWindows with CMake and the GISInternals-Packages for the following reasons:\n  - not everybody wants to buy Visual Studio and there is no reason to force\n    you to buy it just tu build Mapserver on Windows\n  - CMake is the configuration-system for Linux. Why should you use something\n    else which needs to be maintainerd?\n  - as of today, PHP-Mapscript is not supported for PHP-7. PHP-5.6 is build\n    with VC11. To make PHP-Mapscript compatible with the downloadable\n    PHP-Version you need to build with VC11 which is Visual Studio 2012.\n  - GISInternals Downloads contain most dependencies. it's way easier\n\nIf you want to compile Mapserver with any other version of Visual Studio you\ncan for sure use this documentation as help but maybe, some things here won't\nwork for you.\n\n--------------------------------------------------------------------\n      Prerequisites\n--------------------------------------------------------------------\n\nTo build Mapserver on Windows with Visual Studio 2012 Express you need\nVisual Studio 2012 Express installed.\nInstall CMake (https://cmake.org/) and add CMake bin-directory to your PATH\nenvironment variable. You can even to this after opening VS2012 x86 Native\nTools Command Prompt by entering:\n  set PATH=%PATH%;\"C:\\Program Files\\CMake\\bin\"\n... if CMake is installed to \"C:\\Program Files\\CMake\" ;)\n\n--------------------------------------------------------------------\n      Downloading dependencies\n--------------------------------------------------------------------\n\nFor our first build, we will use stable releases to build mapserver.\nDownload MSVC 2012 win32 Packages for GDAL-2.1.2 and Mapserver-7.0.2 from http://gisinternals.com/release.php.\nWe need \"Compiled binaries in a single .zip package\", \"GDAL and MapServer sources\" and \"Compiled libraries and headers\".\nDownload the MSVC 2012 win32 Development Kit from http://gisinternals.com/sdk.php.\nExtract everything to C:\\dev\\work\\release-1700-gdal-2-1-2-mapserver-7-0-2.\nThere should be the directories inside now: bin, doc, gdal, include, lib, regex-0.12, relase-1700, ...\nAfter you got this done, feel free to use other packages which fit your needs better.\n\n--------------------------------------------------------------------\n      Mapserver-sources\n--------------------------------------------------------------------\n\nDownload at least Mapserver-7.0.3 or current 7.0-Branch from github\nand extract or clone from github to C:\\dev\\work\\mapserver.\n\n--------------------------------------------------------------------\n      Building Mapserver\n--------------------------------------------------------------------\n\nAfter downloading and extracting everything, to build Mapserver, follow this steps:\n1. Open VS2012 x86 Native Tools Command Prompt (i'm german, hope it is translated\ncorrectly).\n2. Add CMake-bin to your PATH:\n  set PATH=%PATH%;\"C:\\Program Files\\CMake\\bin\"\n3. Create build-Directory:\n  mkdir C:\\dev\\work\\mapserver\\build\n  cd C:\\dev\\work\\mapserver\\build\n4. Configure:\n  cmake .. -G \"NMake Makefiles\" -DBUILD_SHARED_LIBS=1 -DCMAKE_BUILD_TYPE=Release -Wno-dev\n  cmake .. -DCMAKE_PREFIX_PATH=C:\\dev\\work\\release-1700-gdal-2-1-2-mapserver-7-0-2;C:\\dev\\work\\release-1700-gdal-2-1-2-mapserver-7-0-2\\bin;C:\\dev\\work\\release-1700-gdal-2-1-2-mapserver-7-0-2\\lib;C:\\dev\\work\\release-1700-gdal-2-1-2-mapserver-7-0-2\\include\n  cmake .. -DREGEX_DIR=C:\\dev\\work\\release-1700-gdal-2-1-2-mapserver-7-0-2\\regex-0.12\n  cmake .. -DWITH_POSTGIS=0 -DWITH_SOS=1 -DWITH_KML=1\n  cmake .. -DWITH_CLIENT_WMS=1 -DWITH_CLIENT_WFS=1\n  cmake .. -DWITH_THREAD_SAFETY=1 -DWITH_FCGI=1\n  cmake .. -DWITH_CAIRO=1 -DCAIRO_LIBRARY=C:\\dev\\work\\release-1700-gdal-2-1-2-mapserver-7-0-2\\lib\\cairo.lib\n  cmake .. -DWITH_SVGCAIRO=1 -DSVGCAIRO_LIBRARY=C:\\dev\\work\\release-1700-gdal-2-1-2-mapserver-7-0-2\\lib\\libsvg-cairo.lib\n  cmake .. -DSVG_LIBRARY=1 -DSVG_LIBRARY=C:\\dev\\work\\release-1700-gdal-2-1-2-mapserver-7-0-2\\lib\\libsvg.lib\n5. build\n  nmake\n\nThat's it.\nYou can use all CMake parameters and options as you are used from CMake to fit mapserver to your needs from here.\nEnjoy!\n\n--------------------------------------------------------------------\n      MapScript\n-------------------------------------------------------------------- \n\nTo compile the various versions of MapScript (Perl, PHP, etc) first compile\nthe main mapserver directory and then see the README files in the\nmapscript/perl, mapscript/php or mapscript/python directory for specific\ninstructions.\n\n--------------------------------------------------------------------\n      Dependencies Part 2\n--------------------------------------------------------------------\n\nThe following sections describe how to get mapserver dependencies when not\ndownloading GISInternals packages.\n\n--------------------------------------------------------------------\n      GD library\n-------------------------------------------------------------------- \n\n- MapServer uses the GD library from http://boutell.com/ and the Win32\n  makefiles are set by default to work with the pre-built GD version 2.0.33 \n  provided by Boutell.com.  These predefine \"gdwin32\" binaries include\n  freetype2, libpng, libjpeg, libz, and libgif built-in.  This is very\n  convenient to get a mapserver build going quickly.\n\n  If you are building GD and it's supporting libraries (libpng, libjpeg, \n  libgif, and freetype) from source then it is very important to make sure \n  that you update the -DUSE_GD_* flags and various subcomponent paths in the \n  nmake.opt.  You will also have to take great care to build the various\n  components in a way that is compatible with MapServer.  For instance, if\n  the various components are statically linked into MapServer you will need\n  to use the same build options (ie. /MT or /MT) for all components.\n\n  Here are some useful pointers:\n   - The original GD library: http://boutell.com/gd/\n   - libpng:    http://www.libpng.org/pub/png/libpng.html\n   - zlib:      http://www.info-zip.org/pub/infozip/zlib/\n   - libjpeg:   ftp://ftp.uu.net/graphics/jpeg/\n   - Freetype:  http://www.freetype.org/download.html\n\n--------------------------------------------------------------------\n      REGEX library\n-------------------------------------------------------------------- \n\n- MapServer uses the REGEX library which is standard on all the Unix\n  systems that I know of, but does not come with VC++.\n  If the MapServer distribution did not include a copy of the REGEX\n  library, then you can get a copy from:\n\n      ftp://ftp.gnu.org/pub/gnu/regex/regex-0.12.tar.gz\n\n  The default in the nmake.opt is set to compile with GNU \n  regex-0.12 located in the \"regex-0.12\" directory.\n\n- If you are planning to compile the PHP3_MAPSCRIPT.DLL module, then it\n  is important to make sure that the main Makefile.vc creates MAPSERVER.LIB\n  with the same version of REGEX that PHP uses.\n  See the notes in the main Makefile.vc about that.\n\n--------------------------------------------------------------------\n      Notes on Freetype build.\n-------------------------------------------------------------------- \n\n - You can use the Visual Workspace in freetype/lib/arch/win32 to build\n   the library.\n\n\n--------------------------------------------------------------------\n      Notes on the proj module\n-------------------------------------------------------------------- \n\n  - The Proj.4 (cartographic projection routines) is located at \n        http://www.remotesensing.org/proj/\n\n  Note on the epsg files location and the nad directory :\n\n   * there is an environnemnt variable PROJ_LIB_DIR that can be set to locate \n     the directory where the epsg file is located\n   * if you build this module, at the top of the makefile (./src/makefile.vc), you\n     can set the PROJ_LIB variable and this setting will be used to \n     locate the proj support files.  \n\n  \n----------------------------------------------------------------------\n  Notes on libcurl\n----------------------------------------------------------------------\n\n  Notes libcurl : used to support WMS client connection\n  Mapserver 5.x is using libcurl instead of libwww for WMS client\n  support.\n\n  - the library is located at http://curl.haxx.se/download.html\n\n  Quick notes on how to build the library using MSVC++:\n\n  - Download and extract the library (at this time it is known to work \n    with version 7.10.2 or more recent)\n  - Open the workspace curlib.dsw located under curl-XXX/lib\n  - Build libcurl.dll. Note that the default active configuration of the project\n     is  Win32 Debug. You can modify the configuration to Release version \n     (Build/Set Active Configuration)          \n\n  \n  Notes on mapserver's nmake.opt modifications :\n\n  - uncomment the flag WMSCLIENT= -DUSE_WMS_LYR\n  - uncomment and modify according to your installation the flags \n    related to libcurl :\n\n    * CURL_INC = -I../curl-7.10.2/include\n    * CURL_LIB = ../curl-7.10.2/lib/Release/libcurl.lib\n    * WINSOCK_LIB = \"C:\\Program Files\\Microsoft Visual Studio\\VC98\\Lib\\WSOCK32.LIB\"\n\n  You also need to install the libcurl.dll in your system directory. (The dll will\n  be located in libc-XXX/lib/Release abfter your build of the library)\n    \n\n\n------------------------------------------------------------\n        Notes on GDAL\n------------------------------------------------------------\n\n-  If you are compiling the GDAL library (http://www.gdal.org/)\n   with the PNG support, make sure that the libpng that you use in mapserver \n   is the same as the one used in GDAL.\n\n\n\n$Id$\n","funding_links":["https://github.com/sponsors/OSGeo","https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=KRJ2X44N3HA6U\u0026source=url"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapserver%2Fmapserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmapserver%2Fmapserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapserver%2Fmapserver/lists"}