Re: getting started with libpq and postgresql

Поиск
Список
Период
Сортировка
От Antonio Sergio de Mello e Souza
Тема Re: getting started with libpq and postgresql
Дата
Msg-id 3BE1B46D.6000202@bol.com.br
обсуждение исходный текст
Ответ на getting started with libpq and postgresql  ("Damar Thapa" <damar@sst.com.hk>)
Список pgsql-interfaces
Damar Thapa wrote:

> In my linux RH7.1, I found libpq-fe.h in /usr/include/pgsql directory, 
> so I replace the line '#include "libpq-fe.h"' in ctest.c 
> with'#include "/usr/include/pgsql/libpq-fe.h"'.   I did not get the 
> above-said error, but the followings:
>
>  
>
> /tmp/ccgwexRo.0: In function 'main':
>
>  
>
> /tmp/ccgwexRr.o(.txt+0x12): undefined reference to 'PQconnectdb'
>
>  /tmp/ccgwexRr.o(.txt+0x2b): undefined reference to 'PQstatus'
> /tmp/ccgwexRr.o(.txt+0x5c): undefined reference to 'PQerrorMessage'
>
> /tmp/ccgwexRr.o(.txt+0xd4): undefined reference to 'PQexec'
>
>  
>
> Do I have to do any setting in gcc or compilation has to be done 
> differently.
>
Hi,

You need to tell the compiler where the include files and libraries are. 
Try this command:

gcc -I /usr/include/pgsql -L /usr/lib/pgsql -lpq -o ctest ctest.c

The -I option says that the include files are located at 
/usr/include/pgsql, the -L says that the library can be found at 
/usr/lib/pgsql and the -lpq option shows that you're using the pq 
library. This is just an example, the actual paths in your system can be 
different.
Also, you need to check  the contents of the /etc/ld.so.conf file. Add a 
line with the path to the library if it isn't already there. Remember to 
run, as root, the command /sbin/ldconfig if you change that file.

Regards,

Antonio Sergio




В списке pgsql-interfaces по дате отправления:

Предыдущее
От: "Damar Thapa"
Дата:
Сообщение: getting started with libpq and postgresql
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: ECPG - connection name in "EXEC SQL AT ... " statement