Re: [Linker Error] Unresolved external
Graf László <[email protected]>
| Newsgroups | gmane.comp.db.postgresql.devel.win32 |
|---|---|
| Message-ID | <[email protected]> |
I got the 8.0 release but it do not contain include files only dlls in the lib forder. Magnus Hagander wrote: > You need to link with libpqdll.lib. So far you are just specifying a directory to look for the .lib in - not actually telling it 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 your project. > > (Also, beware that PostgreSQL 7.2.1 is *very* old. I'd strongly suggest you look at something newer. For win32, you can go with either 7.4 on cygwin or 8.0 release candidate on native win32) > > //Magnus > > >>-----Original Message----- >>From: Graf László [mailto:[email protected]] >>Sent: Monday, December 06, 2004 10:20 AM >>To: [email protected] >>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 >> >> -- Graf László - bitfaragó http://grafl.port5.com/ ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [email protected] so that your message can get through to the mailing list cleanly