Re: How to build contrib module separately in PostgreSQL on windows - Mailing list pgsql-hackers

From Craig Ringer
Subject Re: How to build contrib module separately in PostgreSQL on windows
Date
Msg-id 50FCA55C.1080109@2ndQuadrant.com
Whole thread Raw
In response to How to build contrib module separately in PostgreSQL on windows  (朱冯贶天 <zhfkt@hotmail.com>)
List pgsql-hackers
On 01/19/2013 11:09 PM, 朱冯贶天 wrote:

> After downloading the source code, I enter the
> "postgresql-9.2.2\contrib\cube" to type 'nmake' with VS2010 command
> environment. However, the Makefile is not compatible with vs2010.

Correct - PostgreSQL's makefiles are written for GNU make and a
unix-like shell (sh/bash/ash/dash etc). They will not work with NMake.

The Windows build infrastructure uses src/tools/msvc/build.pl as pointed
out by the link Andrew posted,
http://www.postgresql.org/docs/current/static/install-windows.html .
build.pl reads the GNU makefiles and produces MSBuild (Microsoft's nmake
replacement) files that it then runs to compile the sources with the
Visual Studio compilers.

I've never worked out how to build contrib modules externally with it,
though I haven't looked particularly hard. I find it effective to just
drop the contrib module I want to build into the contrib/ directory of
the source tree then use build.pl to compile the tree.

I'd really like to improve this situation - finding and documenting the
external module build method if one exists, and failing that
implementing it. As always, it's down to time and priorities.

> I know that there is a way to build the whole PostgreSQL from source
> code. But it is not convenient.

As far as I know it's your best option right now.

I've tried to make it a bit more convenient with this code and
documentation:

https://github.com/2ndQuadrant/pg_build_win

-- Craig Ringer                   http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services



pgsql-hackers by date:

Previous
From: Craig Ringer
Date:
Subject: Re: Re: Proposal for Allow postgresql.conf values to be changed via SQL [review]
Next
From: Craig Ringer
Date:
Subject: Re: Contrib PROGRAM problem