Thread: Note: Compiling on Windows with free Microsoft compilers

Note: Compiling on Windows with free Microsoft compilers

From
Brian K Boonstra
Date:
All

Though I understand the MinGW environment is recommended for compiling
all of PostGreSQL on Windows, one can (as stated in the documentation)
use MSVC to compile just the essential client stuff (psql, libpq.dll,
libpq.lib).

This is just a note to observe that the same is possible without
shelling out for MSVC.    Microsoft makes the identical optimizing
compiler available in a command-line version at

    http://msdn.microsoft.com/visualc/vctoolkit2003/

It does not have all the libraries you need (in particular
MSVCRT.lib)....so it is also necessary to get the Platform SDK at

    http://www.microsoft.com/msdownload/platformsdk/sdkupdate/


I also grabbed the .NET framework development kit from

    http://msdn.microsoft.com/netframework/downloads/updates/default.aspx



Once you have installed all that stuff, you need to make sure that
nmake.exe, cl.exe and link.exe are in your $PATH (mostly taken care of
by the batch-file-command-shell included with the compiler).  Then, I
found it necessary to modify win32.mak in the interfaces/ subdirectory
of the postgresql source distribution with a linker directive telling
it where to find MSVCRT.lib.   I did this by putting setting
LOPT=/LIB:<dirpath> win win32.mak.


Hope that helps somebody.


           - Brian


Re: Note: Compiling on Windows with free Microsoft compilers

From
Bruce Momjian
Date:
I have taken your information, added a Borland download URL, and added
it to our documentation:

    http://candle.pha.pa.us/main/writings/pgsql/sgml/install-win32.html

Thanks.

---------------------------------------------------------------------------

Brian K Boonstra wrote:
> All
>
> Though I understand the MinGW environment is recommended for compiling
> all of PostGreSQL on Windows, one can (as stated in the documentation)
> use MSVC to compile just the essential client stuff (psql, libpq.dll,
> libpq.lib).
>
> This is just a note to observe that the same is possible without
> shelling out for MSVC.    Microsoft makes the identical optimizing
> compiler available in a command-line version at
>
>     http://msdn.microsoft.com/visualc/vctoolkit2003/
>
> It does not have all the libraries you need (in particular
> MSVCRT.lib)....so it is also necessary to get the Platform SDK at
>
>     http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
>
>
> I also grabbed the .NET framework development kit from
>
>     http://msdn.microsoft.com/netframework/downloads/updates/default.aspx
>
>
>
> Once you have installed all that stuff, you need to make sure that
> nmake.exe, cl.exe and link.exe are in your $PATH (mostly taken care of
> by the batch-file-command-shell included with the compiler).  Then, I
> found it necessary to modify win32.mak in the interfaces/ subdirectory
> of the postgresql source distribution with a linker directive telling
> it where to find MSVCRT.lib.   I did this by putting setting
> LOPT=/LIB:<dirpath> win win32.mak.
>
>
> Hope that helps somebody.
>
>
>            - Brian
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faq
>

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073