LINUX.ORG.RU

где ссылки? (PostgreSQL)


0

0

пишу прогу которая общается с PostgreSQL сервером, хедеры цепляются нормально, но при компиляции вылезают ошибки вида

In function `main': : undefined reference to `PQconnectdb'

и т.д. я так понимаю что линковщик не находит библиотеки Postgres'a. я прав?

хедеры Postgres'a лежат в /usr/include/postgresql либы в /usr/local/lib/postgresql в /etc/ld.so.conf прописана строка /usr/local/lib/postgresql

ldconfig -p выдает: libpq.so.3 (libc6) => /usr/local/lib/postgresql/libpq.so.3 libpq.so (libc6) => /usr/local/lib/postgresql/libpq.so libpgtypes.so.1 (libc6) => /usr/local/lib/postgresql/libpgtypes.so.1 libpgtypes.so (libc6) => /usr/local/lib/postgresql/libpgtypes.so libecpg_compat.so.1 (libc6) => /usr/local/lib/postgresql/libecpg_compat.so.1 libecpg_compat.so (libc6) => /usr/local/lib/postgresql/libecpg_compat.so libecpg.so.4 (libc6) => /usr/local/lib/postgresql/libecpg.so.4 libecpg.so (libc6) => /usr/local/lib/postgresql/libecpg.so

т.е. libpq.so и libpq.so.3, которые являются линками на либу libpq.so.3.1 он видит. в чем еще может быть дело? программа на c++, компилировал g++. g++ -L /usr/local/lib/postgresql никакого эффекта не дает.

помогите разобраться плз. время идет, а дело не движется :(

заранее благодарен.


Ответ на: комментарий от saper

g++ -lpq ptest.cpp -o ptest

не проходит, говорит:

/usr/bin/ld: cannot find -lpq

collect2: ld returned 1 exit status

или я не правильно понял?

получается откомпилить только так:

g++ /usr/local/lib/postgresql/libpq.so ptest.cpp -o ptest

можно ли линковщик заставить самому находить нужные либы???

elenath
() автор топика

подскажите ресурс где можно посмотреть примеры программ на C++ написанные под PostgreSQL.

elenath
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.