Итак, у меня есть следующая проблема:
g++ -std=c++0x -O3 -I/usr/include/scip main.cpp locations/locationreader.cpp locations/locationassigner.cpp scheduler.o optimizer.o dbmanager.o scheduleData.o exam.o -o main -L/usr/lib -lscip -lreadline -lgmp -lz -llpispx -lsoplex -lobjscip -lnlpi.cppad -lscipopt -lzimpl -lpqxx -lpq -pthread
/usr/lib/../lib64/libpqxx.so: undefined reference to `PQescapeIdentifier'
collect2: error: ld returned 1 exit status
make: *** [main] Error 1
И я не могу понять, почему он не может найти ссылку, потому что у меня установлен libpq и он прямо там, в / usr / lib64
$ ls | grep pq
libpq.so
libpq.so.5
libpq.so.5.2
libpqxx-4.0.so
libpqxx.so
Так что, если бы я мог помочь с этим, это было бы прекрасно
PQescapeIdentifier
появился в PostgreSQL 9.0, что соответствует libpq.so.5.3
9,0 заметки о выпуске иметь эту запись:
Добавьте функции libpq PQescapeLiteral () и PQescapeIdentifier () (Роберт
Haas)
Вы, кажется, используете клиентские библиотеки из PostgreSQL-8.4 (libpq.so.5.2
), именно поэтому ему не хватает этой функции.
Других решений пока нет …