Re: [Linker Error] Unresolved external
От | Magnus Hagander |
---|---|
Тема | Re: [Linker Error] Unresolved external |
Дата | |
Msg-id | 6BCB9D8A16AC4241919521715F4D8BCE4762E0@algol.sollentuna.se обсуждение исходный текст |
Ответ на | [Linker Error] Unresolved external (Graf László <graf.laszlo@axis.hu>) |
Ответы |
Re: [Linker Error] Unresolved external
(Graf László <graf.laszlo@axis.hu>)
|
Список | pgsql-hackers-win32 |
You need to link with libpqdll.lib. So far you are just specifying a directory to look for the .lib in - not actually tellingit to do the link. I have no idea how to do that in Borland C++, though. In MSVC you just add the lib file to yourproject. (Also, beware that PostgreSQL 7.2.1 is *very* old. I'd strongly suggest you look at something newer. For win32, you can gowith either 7.4 on cygwin or 8.0 release candidate on native win32) //Magnus > -----Original Message----- > From: Graf László [mailto:graf.laszlo@axis.hu] > Sent: Monday, December 06, 2004 10:20 AM > To: pgsql-hackers-win32@postgresql.org > Subject: [pgsql-hackers-win32] [Linker Error] Unresolved external > > Hi all, > > As a novice I installed PostgreSQL 7.2.1 on Win32 and works, > Borland C++Builder Enterprise Suite 5.0 (build 12.34) what works too. > > I decided to combine these two programs and develop a simple > GUI app to display datas queried from PostgreSQL. I did make > the following changes in the project's settings: > > Project->Properties->Directories->Include path += C:\Program > Project->Properties->Directories->Files\PostgreSQL\7\include Librariy > Project->Properties->Directories->path += C:\Program > Project->Properties->Directories->Files\PostgreSQL\7\lib > > (I aded these lines to the project paths). > > Within a brand new BCB project I typed in the simpliest code: > > > #include <libpq-fe.h> > char *pghost, *pgport, *pgoptions, *pgtty; > char *dbName; > int nFields, i, j; > PGconn *conn; > PGresult *res; > > pghost = NULL; /* host name of the backend server */ > pgport = NULL; /* port of the backend server */ > pgoptions = NULL; /* special options to start up the backend > * server */ > pgtty = NULL; /* debugging tty for the backend server */ > dbName = "template1"; > > /* make a connection to the database */ > conn = PQsetdb(pghost, pgport, pgoptions, pgtty, dbName); > > res = PQexec(conn, "BEGIN"); > PQclear(res); > > res = PQexec(conn, "DECLARE mycursor CURSOR FOR SELECT * FROM > pg_database"); PQclear(res); res = PQexec(conn, "FETCH ALL in > mycursor"); nFields = PQnfields(res); for (i = 0; i < nFields; i++) > printf("%-15s", PQfname(res, i)); > printf("\n\n"); > > /* next, print out the rows */ > for (i = 0; i < PQntuples(res); i++) > { > for (j = 0; j < nFields; j++) > printf("%-15s", PQgetvalue(res, i, j)); > printf("\n"); > } > PQclear(res); > > res = PQexec(conn, "CLOSE mycursor"); > PQclear(res); > > /* commit the transaction */ > res = PQexec(conn, "COMMIT"); > PQclear(res); > > /* close the connection to the database and cleanup */ PQfinish(conn); > > When I run the app I got these errors: > > [Linker Error] Unresolved external '_PQconnectdb' > referenced from C:\PROGRAM > FILES\POSTGRESQL\7\CLIENT\BCB_01\MAIN.OBJ > [Linker Error] Unresolved external '_PQnfields' > referenced from C:\PROGRAM > FILES\POSTGRESQL\7\CLIENT\BCB_01\MAIN.OBJ > [Linker Error] Unresolved external '_PQexec' > referenced from C:\PROGRAM > FILES\POSTGRESQL\7\CLIENT\BCB_01\MAIN.OBJ > [Linker Error] Unresolved external '_PQclear' > referenced from C:\PROGRAM > FILES\POSTGRESQL\7\CLIENT\BCB_01\MAIN.OBJ > [Linker Error] Unresolved external '_PQfinish' > referenced from C:\PROGRAM > FILES\POSTGRESQL\7\CLIENT\BCB_01\MAIN.OBJ > > What is wrong? I supose that I miss something to configure. > > Laszlo Graf > > ---------------------------(end of > broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faqs/FAQ.html > >
В списке pgsql-hackers-win32 по дате отправления: