Hello Tony,
the problem here is that the MS compiler has no definition of pid_t. Adding
a line like:
typedef int pid_t;
to src\include\port\win32.h before line 111 will get you past this.
It appears that you'll also need to comment out:
#include <unistd.h>
at line 24 of src\interfaces\libpq\fe-connect.c in order to complete the
libpq build (under VC++ at least). Lastly, psql builds with a whole host of
warnings, but appears functional.
To the community at large, I've been out of touch for a while so not sure
how best to patch, but I HTH.
Cheers,
Claudio
-----Original Message-----
From: Tony and Bryn Reina [mailto:reina_ga@hotmail.com]
Sent: Monday, 22 November 2004 8:59 PM
To: pgsql-hackers-win32@postgresql.org
Subject: [pgsql-hackers-win32] Beta5 libpq Build broken with MS .NET 2003
I just downloaded 8.0beta5 to see if I could build libpq.dll with MS Visual
Studio .NET 2003 on Windows XP. The make file throws the error:
Building the Win32 static library...
copy pthread.h.win32 pthread.h
1 file(s) copied.
echo #define SYSCONFDIR "" >pg_config_paths.h
if not exist ".\Release/" mkdir ".\Release"
cl.exe @C:\DOCUME~1\Tony\LOCALS~1\Temp\nm32F.tmp
getaddrinfo.c
c:\msys\1.0\home\Tony\postgresql-8.0.0beta5\src\include\port\win32.h(111) :
error C2146: syntax error : missing ')' before identifier 'pid'
c:\msys\1.0\home\Tony\postgresql-8.0.0beta5\src\include\port\win32.h(111) :
error C2144: syntax error : '<Unknown>' should be preceded by '<Unknown>'
c:\msys\1.0\home\Tony\postgresql-8.0.0beta5\src\include\port\win32.h(111) :
error C2144: syntax error : '<Unknown>' should be preceded by '<Unknown>'
c:\msys\1.0\home\Tony\postgresql-8.0.0beta5\src\include\port\win32.h(111) :
error C2143: syntax error : missing ')' before 'identifier'
c:\msys\1.0\home\Tony\postgresql-8.0.0beta5\src\include\port\win32.h(111) :
error C2061: syntax error : identifier 'pid'
c:\msys\1.0\home\Tony\postgresql-8.0.0beta5\src\include\port\win32.h(111) :
error C2059: syntax error : ';'
c:\msys\1.0\home\Tony\postgresql-8.0.0beta5\src\include\port\win32h(111) :
error C2059: syntax error : ')'
NMAKE : fatal error U1077: 'cl.exe' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio .NET
2003\VC7\BIN\nmake.exe"' : return code '0x2'
Stop.
I looked at the offending line in win32.h and don't immediately see any
errors with the ). Tried adding a ) before pid, but that causes more errors.
Perhaps someone smarter can see where the problem is.
-Tony