Thread: Fw: make errors building libpqdll.lib

Fw: make errors building libpqdll.lib

From
"Rob Butler"
Date:
I tried building the postgres libs on another machine that doesn't have the
Microsoft SDK update.  Still having problems.  If I use the DLL it still
cant find PQescapeString during linking.  If I use the static library, it
compiles and links without error, but then has all sorts of problems and
crashes.

So any ideas?  Or could someone send me a working set of dll / lib files.
Someone has to have them with all the cygwin postgres users out there.

Everything else so far seems to work as long as I don't use PQescapeString.
(I just comment it out, and it compiles / links fine!)

I can connect, get a result set, and disconnect without error.  (haven't
written the code to process the result set yet, but I will soon).

Thanks again for the help
Rob.


> Hello all,
>
> I'm running into some sort of error building libpq on my machine.  I
change
> to /src and run nmake -f win32.mak as directed, but get output showing
> warning messages.  OK fine, warnings are not errors..  BUT the
libpqdll.lib
> does not have an entry for PQescapeString..  Which causes the following
> error in my project:
>
> error LNK2001: unresolved external symbol _PQescapeString
> fatal error LNK1120: 1 unresolved externals
>
> If I comment out PQescapeString, the project compiles fine.  Other
postgres
> functions seem to be available and work when called.  Is this a bug in the
> win32 build of libpq?  Or is something going wrong on my machine.
>
> Either way, all I need is the libpqdll.lib, libpq-fe.h, and libpq.dll
> files..  If someone else has them for postgres 7.2 already and could send
> them to me, it would save some time.  Help solving the issue so I can
build
> my own libpq.dll would also be greatly appreciated.
>
> I'm using VC++ Enterprise Edition, with the August 2001 Edition Microsoft
> SDK update.
>
> Thanks for the help
> Rob
>
> Here is a copy of the build output:
>
>  cd include
>  if not exist pg_config.h copy pg_config.h.win32 pg_config.h
>  cd ..
>  cd interfaces\libpq
>  nmake /f win32.mak
> Building the Win32 static library...
>
> No configuration specified. Defaulting to Release.
>
>  cl.exe @C:\DOCUME~1\rob\LOCALS~1\Temp\nma00960.
> dllist.c
>  cl.exe @C:\DOCUME~1\rob\LOCALS~1\Temp\nmb00960.
> md5.c
> C:\Program Files\Microsoft SDK\Include\.\wingdi.h(98) : warning C4005:
> 'ERROR' : macro redefinition
>         ..\..\include\utils/elog.h(19) : see previous definition of
'ERROR'
>  cl.exe @C:\DOCUME~1\rob\LOCALS~1\Temp\nmc00960.
> fe-auth.c
> fe-auth.c(537) : warning C4090: '=' : different 'const' qualifiers
> fe-connect.c
> fe-exec.c
> fe-lobj.c
> fe-misc.c
> fe-misc.c(129) : warning C4018: '>' : signed/unsigned mismatch
> fe-misc.c(221) : warning C4018: '>' : signed/unsigned mismatch
> fe-print.c
> fe-print.c(302) : warning C4090: 'function' : different 'const' qualifiers
> fe-print.c(302) : warning C4022: 'free' : pointer mismatch for actual
> parameter 1
> pqexpbuffer.c
> pqexpbuffer.c(195) : warning C4018: '<' : signed/unsigned mismatch
> pqexpbuffer.c(243) : warning C4018: '<' : signed/unsigned mismatch
>  link.exe -lib @C:\DOCUME~1\rob\LOCALS~1\Temp\nmd00960.
>  cl.exe @C:\DOCUME~1\rob\LOCALS~1\Temp\nme00960.
> libpqdll.c
>  rc.exe /l 0x409 /fo".\Release\libpq.res" libpq.rc
>  link.exe @C:\DOCUME~1\rob\LOCALS~1\Temp\nmf00960.
>    Creating library .\Release\libpqdll.lib and object
.\Release\libpqdll.exp
>  cd ..\libpq++
>  nmake /f win32.mak
>  cd ..\..\bin\psql
>  nmake /f win32.mak
>  cl.exe @C:\DOCUME~1\rob\LOCALS~1\Temp\nma00960.
> getopt.c
>  cl.exe @C:\DOCUME~1\rob\LOCALS~1\Temp\nmb00960.
> command.c
> command.c(294) : warning C4013: 'chdir' undefined; assuming extern
returning
> int
> command.c(1130) : warning C4018: '<' : signed/unsigned mismatch
> command.c(1178) : warning C4018: '<' : signed/unsigned mismatch
> command.c(1216) : warning C4244: '=' : conversion from 'long ' to 'char ',
> possible loss of data
> common.c
> help.c
> input.c
> stringutils.c
> mainloop.c
> copy.c
> startup.c
> prompt.c
> variables.c
> large_obj.c
> large_obj.c(216) : warning C4018: '<' : signed/unsigned mismatch
> print.c
> print.c(301) : warning C4018: '>=' : signed/unsigned mismatch
> print.c(1261) : warning C4090: 'function' : different 'const' qualifiers
> print.c(1261) : warning C4022: 'free' : pointer mismatch for actual
> parameter 1
> print.c(1262) : warning C4090: 'function' : different 'const' qualifiers
> print.c(1262) : warning C4022: 'free' : pointer mismatch for actual
> parameter 1
> describe.c
> tab-complete.c
> mbprint.c
>  link.exe @C:\DOCUME~1\rob\LOCALS~1\Temp\nmc00960.
>  cd ..\..
>  echo All Win32 parts have been built!
> All Win32 parts have been built!
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
>