Thread: Problems building 7.1beta3 on WinNT under cygwin

Problems building 7.1beta3 on WinNT under cygwin

From
Barry Lind
Date:
I have tried a couple of times now to get the full 7.1 to build under
WinNT 4.0.  I first tried with beta1 and yesterday tried again with
beta3.  I have been unsuccessful in getting it to build.

I have been using the instructions at
http://people.freebsd.org/~kevlo/postgres/portNT.html to get this to
build.  While these instructions are for 7.0.3, I figured they were a
good starting point since I don't know of any official build
instructions for Windows.

These instructions include a patch file that needs to be applied to
7.0.3.  I have found that most of the diffs are no longer necessary as
they are in the base 7.1 code, however the changes to
src/utils/dllinit.c were still needed.

However even with these changes in dllinit.c I am still having
problems.  I get sucessfully through building about half of the code
when I get the following failure:

dllwrap -o plpgsql.dll --dllname plpgsql.dll --def
plpgsql.def pl_parse.o pl_handler.o pl_comp.o pl_exec.o pl_funcs.o
../../../../src/utils/dllinit.o  -L/usr/local/lib -L/usr/local/lib
-L../../../../src/backend
-lpostgres -lcygipc -lcygwin -lcrypt -lkernel32
pl_exec.o(.text+0x3465):pl_exec.c: undefined reference to
`TransactionCommandContext'
collect2: ld returned 1 exit status
dllwrap: gcc exited with status 1


Has anyone been successful in getting 7.1 to build on WinNT under
cygwin?  If so are their any instructions on how to successfully do it?

thanks,
--Barry

PS.  Why is it that instructions on how to build PostgreSQL on Windows
end up being on a personal web page (like the one above I used for 7.0.3
instructions) as opposed to being in CVS in the src tree like some other
products?

Re: Problems building 7.1beta3 on WinNT under cygwin

From
Tom Lane
Date:
Barry Lind <barry@xythos.com> writes:
> dllwrap -o plpgsql.dll --dllname plpgsql.dll --def
> plpgsql.def pl_parse.o pl_handler.o pl_comp.o pl_exec.o pl_funcs.o
> ../../../../src/utils/dllinit.o  -L/usr/local/lib -L/usr/local/lib
> -L../../../../src/backend
> -lpostgres -lcygipc -lcygwin -lcrypt -lkernel32
> pl_exec.o(.text+0x3465):pl_exec.c: undefined reference to
> `TransactionCommandContext'

I think that's been resolved since beta3.  Try the nightly snapshot.

Also read the recent mail list traffic concerning the NT port ...
mostly in pgsql-ports, IIRC, but check -patches and -hackers too.

            regards, tom lane