Compiling pgsql C/C++ interfaces on Win not using Cygwin

Started by Tomáš Vondraover 23 years ago3 messagesgeneral
Jump to latest
#1Tomáš Vondra
vondra@tesmail.cz

Hello everybody,
is it possible to compile postgres C/C++ interfaces (use libpq or
libpq++ in a client application) on Windows not using Cygwin?

I've just tried to compile some examples from 7.2.1 using MS Visual
C++ 6, but I got lot of "uresolved external symbol" errors when
linking, for example:

testlibpq2.obj : error LNK2001: unresolved external symbol _PQfinish
testlibpq2.obj : error LNK2001: unresolved external symbol _PQnotifies
testlibpq2.obj : error LNK2001: unresolved external symbol _PQclear
testlibpq2.obj : error LNK2001: unresolved external symbol _PQresultStatus
testlibpq2.obj : error LNK2001: unresolved external symbol _PQexec
testlibpq2.obj : error LNK2001: unresolved external symbol _PQerrorMessage
testlibpq2.obj : error LNK2001: unresolved external symbol _PQstatus
testlibpq2.obj : error LNK2001: unresolved external symbol _PQsetdbLogin

I think it means some important libraries are missing (at least I
think it means this).

I don't wan't to compile all the server, just the part necessarry
to use in a client app. I don't want to use ODBC, I'd like to use
native access to database. If there's such a way?

Tomas

#2Bruce Momjian
bruce@momjian.us
In reply to: Tomáš Vondra (#1)
Re: Compiling pgsql C/C++ interfaces on Win not using Cygwin

This means you didn't include libpq.a in your link line.

---------------------------------------------------------------------------

Tom��� Vondra wrote:

Hello everybody,
is it possible to compile postgres C/C++ interfaces (use libpq or
libpq++ in a client application) on Windows not using Cygwin?

I've just tried to compile some examples from 7.2.1 using MS Visual
C++ 6, but I got lot of "uresolved external symbol" errors when
linking, for example:

testlibpq2.obj : error LNK2001: unresolved external symbol _PQfinish
testlibpq2.obj : error LNK2001: unresolved external symbol _PQnotifies
testlibpq2.obj : error LNK2001: unresolved external symbol _PQclear
testlibpq2.obj : error LNK2001: unresolved external symbol _PQresultStatus
testlibpq2.obj : error LNK2001: unresolved external symbol _PQexec
testlibpq2.obj : error LNK2001: unresolved external symbol _PQerrorMessage
testlibpq2.obj : error LNK2001: unresolved external symbol _PQstatus
testlibpq2.obj : error LNK2001: unresolved external symbol _PQsetdbLogin

I think it means some important libraries are missing (at least I
think it means this).

I don't wan't to compile all the server, just the part necessarry
to use in a client app. I don't want to use ODBC, I'd like to use
native access to database. If there's such a way?

Tomas

---------------------------(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

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#3Crercio O. Silva
cos@dbtools.com.br
In reply to: Tomáš Vondra (#1)
Re: Compiling pgsql C/C++ interfaces on Win not using Cygwin

Hi Tom�s,

Include the lib in your project (Project => Settings =>Link Tab => Object
Library Modules). You have two options (for debug and release modes):

1) libpq.lib (static version, you don't need to distribute libpq.dll)
2) libpqdll.lib (dinamic link library, you need to distribute libpq.dll)

Also don't forget to set the directories under Tools => Options =>
Directories (Include Files and Library Files).
In the manual there are some info about compiling the libpq libraries in
Win32. I just don't remember where exactly.

PS: I'm assuming you are creating an application with VS6, since you
mentioned that.

[]s

Crercio O. Silva / DBTools Software

----- Original Message -----
From: "Tomďż˝ Vondra" <vondra@tesmail.cz>
To: <pgsql-general@postgresql.org>
Sent: Friday, August 30, 2002 11:22 AM
Subject: [GENERAL] Compiling pgsql C/C++ interfaces on Win not using Cygwin

Show quoted text

Hello everybody,
is it possible to compile postgres C/C++ interfaces (use libpq or
libpq++ in a client application) on Windows not using Cygwin?

I've just tried to compile some examples from 7.2.1 using MS Visual
C++ 6, but I got lot of "uresolved external symbol" errors when
linking, for example:

testlibpq2.obj : error LNK2001: unresolved external symbol _PQfinish
testlibpq2.obj : error LNK2001: unresolved external symbol _PQnotifies
testlibpq2.obj : error LNK2001: unresolved external symbol _PQclear
testlibpq2.obj : error LNK2001: unresolved external symbol _PQresultStatus
testlibpq2.obj : error LNK2001: unresolved external symbol _PQexec
testlibpq2.obj : error LNK2001: unresolved external symbol _PQerrorMessage
testlibpq2.obj : error LNK2001: unresolved external symbol _PQstatus
testlibpq2.obj : error LNK2001: unresolved external symbol _PQsetdbLogin

I think it means some important libraries are missing (at least I
think it means this).

I don't wan't to compile all the server, just the part necessarry
to use in a client app. I don't want to use ODBC, I'd like to use
native access to database. If there's such a way?

Tomas