我想在我的Mac上運行PostgreSQL。 PostgreQL本身工作正常,我可以創建數據庫和表之類的東西,但是當我嘗試用C++的東西,如連接到PostgreSQL:無法使用C++連接到PostgreSQL
#include <stdio.h>
#include </Library/PostgreSQL/8.4/include/libpq-fe.h>
#include <string>
int main() {
PGconn *conn;
PGresult *res;
int rec_count;
conn = PQconnectdb("dbname=ljdata host=localhost user=dataman);
if (PQstatus(conn) == CONNECTION_BAD) {
puts("We were unable to connect to the database");
exit(0);
}
res = PQexec(conn, "update people set phonenumber=\'5055559999\' where id=3");
並且用類似編譯:
g++ -lpq db.cpp -o db
我得到的錯誤 LD:庫找不到-lpq
,如果我沒有編譯LPQ,我得到
Undefined symbols:
"_PQclear", referenced from:
_main in ccpjNCAU.o
_main in ccpjNCAU.o"
我已經包含libpq-fe.h,它不應該工作嗎?有人知道出了什麼問題嗎?
因此,如果我的文件在家裏,我應該只做g ++ -L/Library/PostgreSQL/8.4/include/libpq-fe.h?那也行不通。 – Confused 2011-03-14 22:34:24
-L/path/to/lib/dir not/path/to/header/file。 libpq位於何處? – Tim 2011-03-14 22:39:52
libpq-fe.h和libpq-events.h位於Library/PostgreSQL/8.4/include /中,但在Library/PostgreSQL/8.4/include/libpq – Confused 2011-03-14 22:46:46