Here's my simple program:
#include <stdio.h>
#include <libpq-fe.h>
int main() { int i, j; PGconn *dbconn; PGresult *results;
dbconn = PQconnectdb( "hostaddr=AN_IP_ADDR user=USERNAME dbname=SOMEDB" );
results = PQexec( dbconn, "select * from account" );
for( i = 0; i < PQntuples( results ); i++ ) { printf( "Row #%i\n", i );
for( j = 0; j < PQnfields( results ); j++ ) { printf( " Field: %16s / Value:
%s\n", PQfname( results, j ), PQgetvalue( re sults, i, j ) ); } }
PQfinish( dbconn ); return( 0 );
}
I'm trying to compile a simple program using libpq and initially get
the following linker error:
-g -Wall -I/usr/local/pgsql/include -L/usr/local/pgsql/lib -lpq test.c
-o test
/usr/bin/ld: table of contents for archive:
/usr/local/pgsql/lib/libpq.a is out of date; rerun ranlib(1) (can't
load from it)
make: *** [all] Error 1
After running ranlib on libpq.a, I get the following:
gcc -g -Wall -I/usr/local/pgsql/include -L/usr/local/pgsql/lib -lpq
test.c -o test
/usr/bin/ld: Undefined symbols:
_PQconnectdb
_PQexec
_PQfinish
_PQfname
_PQgetvalue
_PQnfields
_PQntuples
make: *** [all] Error 1
Any ideas?
-Stephen