PGCon2017 - 20180510

PGCon 2017
The PostgreSQL Conference

Andrew Dunstan
Day Talks - Day 1 - 2017-05-25
Room DMS 1160
Start time 11:00
Duration 00:45
ID 1065
Event type Lecture
Track Hacking
Language used for presentation English

Building PostgreSQL and extensions on and for Windows

the ways are many ...

This talk will focus on the many ways of building Postgres core and Extensions for windows. While the focus will be on usong the Microsoft Tools, we will also cover building with MinGW, and cross-compiling on Linux with the Mingw64 cross compilation chain. We will also demonstrate new work that makes it very much easier to build extensions for Windows out of tree, almost as easily as if you were using PGXS, using cmake to generate Microsoft project files.

Building for Windows can be daunting, annoying, and frustrating. Many hackers don't use Windows, and so things happen that don't show up until the buildfarm gets a failure. This talk will take the mystery out of it. It will show how you can cross-compile easily on Linux, and catch a lot of compile time errors. Also it show how to set up and operate the different ways of building natively for Windows, including using MinGW/MSys, and using Visural Studio's command line compilers. The I will then move on to how to build extensions, first showing how build in tree. Finally I will demonstrate new work using CMake that lets you build against an installed postgres without a full source tree, just as you can with PGXS. I will start with a simple extension with no dependecies, and then demo a more challenging example.