This is my first attempt at using libpq, and I'm running across a strange
problem. Here is my bare-bones program:
#include <stdio.h>
#include "libpq-fe.h"
int main(int argc, char **argv) {
PGconn *conn;
fprintf(stderr, "connecting\n");
conn = PQconnectdb("dbname=postgres");
PQfinish(conn);
return 0;
}
I expected this program to print "connecting", but in fact I get no output
whatsoever. If I comment out the PQconnectdb and PQfinish lines, I see
"connecting" as expected. What could be going on here?
A few notes:
- I'm running PostgreSQL 8.3.6 on Windows XP. I used the one-click
installer
to install.
- I'm compiling the program with MinGW. I get no compiler warnings or
errors.
- I can connect to the database just fine using pgAdmin and the
command-line
client. The database is running on localhost.
- I've tried adding code to see if PQstatus(conn) == CONNECTION_OK, but
this
hasn't been useful. Since fprintf() isn't working, I can't display a
message
showing the result of the comparison.
- I've tried various combinations of connection options in case there was
an
issue with the hostname, database name, username, or password. I always
get
the same result: no output.
- I've tried printing to stdout and to a file, but neither helped.
Thanks for any help you can provide.
Joey