Problem with libpq++

From: Tim Boring <tboring(at)insight(dot)rr(dot)com>
To: pgsql-interfaces(at)postgresql(dot)org
Subject: Problem with libpq++
Date: 2001-12-10 03:56:31
Message-ID: 1007956603.13686.9.camel@tim
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces

I'm trying to compile the example program on p194 of PostgreSQL:
Introduction and concepts, but the compiler (g++ v2.95.3) is complaining
about an undefined reference to PgConnection::ConnectionBad() and other
calls to class member functions. I've included the command I'm using to
compile the source, the error message, and the source below. Any help in
pointing out where the mistake is is greatly appreciated.

Tim

Here's the command line I'm using for compilation:

g++ -I/usr/local/pgsql/include postgre.cpp -o postgre
-L/usr/local/pgsql/lib -lpq++

But that fails with the following error:

/tmp/ccErizeU.o: In function `main':
2 /tmp/ccErizeU.o(.text+0x2f): undefined reference to
`PgConnection::Conne ctionBad()'
3 /tmp/ccErizeU.o(.text+0x50): undefined reference to
`PgConnection::Error Message()'
4 /tmp/ccErizeU.o(.text+0x107): undefined reference to
`PgConnection::Exec TuplesOk(char const*)'
5 /tmp/ccErizeU.o(.text+0x15b): undefined reference to
`PgDatabase::Tuples ()'
6 /tmp/ccErizeU.o(.text+0x1a1): undefined reference to
`PgDatabase::GetVal ue(int, int)'
7 /tmp/ccErizeU.o: In function `PgDatabase::PgDatabase(char
const*)':
8 /tmp/ccErizeU.o(.gnu.linkonce.t._ZN10PgDatabaseC1EPKc+0x12):
undefined r eference to `PgConnection::PgConnection(char const*)'
9 /tmp/ccErizeU.o: In function `PgDatabase::~PgDatabase()':
10 /tmp/ccErizeU.o(.gnu.linkonce.t._ZN10PgDatabaseD1Ev+0x1a):
undefined ref erence to `PgConnection::~PgConnection()'
11 /tmp/ccErizeU.o: In function `PgDatabase::~PgDatabase()':
12 /tmp/ccErizeU.o(.gnu.linkonce.t._ZN10PgDatabaseD0Ev+0x1a):
undefined ref erence to `PgConnection::~PgConnection()'
13 collect2: ld returned 1 exit status

Here's the source I'm trying to compile:
#include <iostream>
4 #include "libpq++.h"
5
6 int main() {
7
8 char state_code[3];
9 char query_string[256];
10 PgDatabase data("dbname=test");
11
12 if ( data.ConnectionBad() ) {
13 cerr << "Connect to database failed." << endl
14 << "Error returned: " <<
data.ErrorMessage()
15 << endl;
16 exit(1);
17 }
18
19 cout << "Enter a state code: ";
20 cin.get(state_code, 3, '\n');
21
22 sprintf( query_string,
23 "SELECT name \
24 FROM statename \
25 WHERE code = '%s'", state_code);
26
27 if ( !data.ExecTuplesOk(query_string) ) {
28 cerr << "SELECT query failed." << endl;
29 exit(1);
30 }
31
32 for ( int i = 0; i < data.Tuples(); i++ ) {
33 cout << data.GetValue(i,0) << endl;
34 }
35
36 return 0;
37
38 }

Responses

Browse pgsql-interfaces by date

  From Date Subject
Next Message Christof Petig 2001-12-10 12:41:56 Re: ECPG ERROR FOR "exec sql BEGIN"
Previous Message Darko Prenosil 2001-12-07 18:50:24 Re: Operator class and index