Thread: Simple compile question

Simple compile question

From
"Stephen Whinston"
Date:
I just installed pgsql this morning and already encountered some difficulties. How do I compile a C/C++ client
applicationwith pgsql? Here's what I do: 

gcc -c -I/usr/local/pgsql/include sample.cpp

and I get:

aggregate 'PGconn conn' has incomplete type and cannot be initialized
aggregate 'PGresult res' has incomplete type and cannot be initialized

The libpq-fe.h file *is* in /usr/local/pgsql/include

What other include files am I missing?

Also, a lot of messages seem to indicate that there is sample code under the src/ dir. Where is this? It is not under
/usr/local/pgsql.Did I miss a step in the install? 

thanks,
Stephen


Re: Simple compile question

From
Payman
Date:
Hi Stephan
I am using Postgresql on MacOS X with gnu 3.1

I am using this for C++ builds
g++  -I/usr/local/pgsql/include -o testlibpq0 testlibpq0.cc 
-L/usr/local/pgsql/lib -lpq++
and for C build
gcc -I/usr/local/pgsql/include -o testlibpqc testlibpqc.c 
-L/usr/local/pgsql/lib -lpq

You sample is C++ or C prog ?
if is C prog are you include libpq-fe.h in you source code ?
PGconn is defined in this header.

Payman



>I just installed pgsql this morning and already encountered some difficulties. How do I compile a C/C++ client
applicationwith pgsql? Here's what I do:
 
>
>gcc -c -I/usr/local/pgsql/include sample.cpp
>
>and I get:
>
>aggregate 'PGconn conn' has incomplete type and cannot be initialized
>aggregate 'PGresult res' has incomplete type and cannot be initialized
>
>The libpq-fe.h file *is* in /usr/local/pgsql/include
>
>What other include files am I missing?
>
>Also, a lot of messages seem to indicate that there is sample code under the src/ dir. Where is this? It is not under
/usr/local/pgsql.Did I miss a step in the install?
 
>
>  
>





Re: Simple compile question

From
Tom Lane
Date:
"Stephen Whinston" <swhinston@pillardata.com> writes:
> gcc -c -I/usr/local/pgsql/include sample.cpp
> aggregate 'PGconn conn' has incomplete type and cannot be initialized
> aggregate 'PGresult res' has incomplete type and cannot be initialized

Where did you get this "sample.cpp" from?  It appears to be written
incorrectly.

> Also, a lot of messages seem to indicate that there is sample code
> under the src/ dir. Where is this?

Look in the source-code distribution.  I don't believe we install any
sample code; there's no standard place for examples in the usual system
directories.
        regards, tom lane