Acá te mando el código con el que podes conectarte a postgresql desde c en linux, y mostrar los datos.

espero que te sirva.

saludos

kicke

para compilarlo yo hago esto:

gcc -I /usr/local/pgsql/include -L /usr/local/pgsql/lib -o nombre_salida -lpq nombre_archivo.c

---------------------------------------------------
#include <stdio.h>
#include <libpq-fe.h>

static void
salir(PGconn *psql)
{
        PQfinish(psql);
        exit(1);
}

int
main()
{

PGconn *psql;
PGresult *result;

int  nFields;
int  i,j;


psql = PQconnectdb("hostaddr = '10.23.184.113' port = '5432' dbname = 'nombrebase' user = 'postgres' password = 'manager' connect_timeout = '10'");

if (PQstatus(psql) != CONNECTION_OK)
{

        fprintf(stderr, "libpq error: PQstatus(psql) != CONNECTION_OK\n\n");
        salir(psql);
}

result = PQexec(psql,"select * from empresa;");

        nFields = PQnfields(result);


        for (i = 0; i < nFields; i++)
                printf("%-15s", PQfname(result, i));
        printf("\n\n");


        for (i = 0; i < PQntuples(result); i++)
        {
                for (j = 0; j < nFields; j++)
                        printf("%-15s", PQgetvalue(result, i, j));
                printf("\n");
        }

        PQclear(result);


salir(psql);
system(". sshe.sh");

}



------------------------------------------------------------------------
Conectate a Internet Gratis de Argentina.Com