[wiki:UsersWikiWinCompile Back to Windows Compile] = Compiling PostGIS 1.5 under VC++ = This is still a work in progress: A good tool for extracting tar, gz, and bz files: [http://www.7-zip.org/ http://www.7-zip.org/] == Compile PostgreSQL under VC++ 2008 (express or Studio) == Note that if you are compiling for 64-bit, Express is not supported so you have to use VC++ Professional or above. [http://www.postgresql.org/docs/9.0/interactive/install-win32-full.html Full details here] We will just cover enough to be able to compile PostGIS so will not be compiling with additional dependencies 1. Install Active State ActivePerl (5.8+) [http://www.activestate.com/activeperl/downloads http://www.activestate.com/activeperl/downloads] 2. Download PostgreSQL source and Extract PostgreSQL 9.0 source tar ball [http://www.postgresql.org/ftp/source/ http://www.postgresql.org/ftp/source/] into folder C:\Projects\PostgreSQL\postgresql-9.0.1win 3. Create a file C:\Projects\PostgreSQL\postgresql-9.0.1win\src\tools\msvc\buildenv.pl Add add a line -- note in our case -- we compile with mingw usually, so we are completely overwriting the path with one that doesn't contain mingw because mingw and VC++ don't play well together when compiling PostgreSQL {{{ #-- buildenv.pl starts here -- $ENV{PATH}='C:\perl\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies\;C:\Program Files\Support Tools\;C:\WINDOWS\system32\WindowsPowerShell\v1.0;C:\opt\gtk\bin;C:\Program Files\R\R-2.10.1\bin'; $ENV{PATH} = $ENV{PATH} . ';C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN;C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools;C:\WINDOWS\Microsoft.NET\Framework\v3.5;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Program Files\Microsoft Visual Studio 9.0\VC\VCPackages'; # -- buildenv.pl ends here -- }}} 4. Open up VC ++ commandling from: start->Programs->Visual c++ Express 2008 ->Visual Studio Tools 5. cd C:\Projects\PostgreSQL\postgresql-9.0.1win\src\tools\msvc 6. clean.bat 7. build.bat == Compile GEOS 3.3.0 or 3.2.2 under VC++ == 1. download [http://download.osgeo.org/geos/geos-3.2.2.tar.bz2 http://download.osgeo.org/geos/geos-3.2.2.tar.bz2] 2. extract into c:\projects\geos\geos-3.2.2win 3. Launch start-programs->MS visual c++ 2008->Visual Studio tools command prompt 4. cd c:\projects\geos]geos-3.2.2win 5. Following nmake directions from [http://trac.osgeo.org/geos/wiki/BuildingOnWindowsWithNMake http://trac.osgeo.org/geos/wiki/BuildingOnWindowsWithNMake] {{{ autogen.bat nmake /f makefile.vc MSVC_VER=1400 }}} == Compile Proj under VC++ ==