|
|
| <prev next> |
Choosing A Webhost: |
RE: [MySQL++]Good/Bad News:MinGW Support: msg#00090db.mysql.c++
Although I did spend some time researching this problem, I gotta admit I never got very far. As it turns out, linking DLLs/Libs/SO's between c and c++ and between platforms is a real pain in the @$$ - hence the term "dll hell". I'm not sure which code you mean should include __stdcall, but I was under the impression that for C++ apps building a DLL in mingw, it should be exported as __declspec(dllexport) (just like MS does it in Visual Studio). But I could most definitely be wrong. Then, when you're importing them into an application via the dll's .lib file, you just change that to __declspec(dllimport). Usually, this is handled in the form of macros. As for __stdcall, I thought that was for standard c functions like what *should* be in the libmysqlclient.dll. The confusing part about all of this is it basically is just a way of determining name mangling in the function names inside of the dll, and the way that parameters are passed between functions. Ugh. Any way Warren or Chris could enlighten us and clear any of this up? -----Original Message----- From: Death Gauge [mailto:clay_hg@xxxxxxxxxxx] Sent: Thursday, December 29, 2005 11:30 PM To: plusplus@xxxxxxxxxxxxxxx Subject: RE: [MySQL++]Good/Bad News:MinGW Support I was about to include the method to get it to compile that worked for me but I ran into problems when I tried to compile the examples with the DLL/LIB. Somewhere in the code there should be virtuals __stdcall function(); in the headers so that it can pull them out of the DLL but I can't find any. I'm stumped at what to do cause the DLL/LIB compiled fine and then it oddly does this with compiling the examples because it can't find he part to read from the DLL to work. Any ideas? C:\mysqlpp\examples>make g++ -L..\lib\debug debug/resetdb.o debug/util.o -odebug/resetdb.exe -lmys qlpp -lmysqlclient debug/resetdb.o(.text$_ZN7mysqlpp5QueryD1Ev[mysqlpp::Query::~Query()]+0x39): rese tdb.cpp: undefined reference to `vtable for mysqlpp::Query' debug/resetdb.o(.text$_ZN7mysqlpp5QueryD1Ev[mysqlpp::Query::~Query()]+0x48): rese tdb.cpp: undefined reference to `vtable for mysqlpp::Query' debug/resetdb.o(.text$_ZN7mysqlpp5QueryD1Ev[mysqlpp::Query::~Query()]+0x57): rese tdb.cpp: undefined reference to `vtable for mysqlpp::Query' debug/resetdb.o(.text$_ZN7mysqlpp5QueryD1Ev[mysqlpp::Query::~Query()]+0x63): rese tdb.cpp: undefined reference to `vtable for mysqlpp::Query' debug/resetdb.o(.text$_ZN7mysqlpp5QueryD1Ev[mysqlpp::Query::~Query()]+0x21a) :res etdb.cpp: undefined reference to `VTT for mysqlpp::Query' debug/resetdb.o(.text$_ZN7mysqlpp5QueryD1Ev[mysqlpp::Query::~Query()]+0x240) :res etdb.cpp: undefined reference to `VTT for mysqlpp::Query' debug/util.o(.text$_ZN7mysqlpp4DateD1Ev[mysqlpp::Date::~Date()]+0xb):util.cp p: u ndefined reference to `vtable for mysqlpp::Date' debug/util.o(.text$_ZN7mysqlpp4DateC1ERKNS_12ColData_TmplINS_12const_stringE EE[m ysqlpp::Date::Date(mysqlpp::ColData_Tmpl<mysqlpp::const_string> const&)]+0x45):u til.cpp: undefined reference to `vtable for mysqlpp::Date' debug/util.o(.text$_ZN7mysqlpp3RowC1Ev[mysqlpp::Row::Row()]+0x5b):util.cpp: unde fined reference to `vtable for mysqlpp::Row' debug/util.o(.text$_ZN7mysqlpp3RowC1Ev[mysqlpp::Row::Row()]+0x67):util.cpp: unde fined reference to `vtable for mysqlpp::Row' collect2: ld returned 1 exit status make: *** [resetdb.exe] Error 1 --Death Gauge "How do you gauge your death?!" ----Original Message Follows---- From: "Patrick McMichael" <p.s.mcmichael@xxxxxxxxxxxx> To: <plusplus@xxxxxxxxxxxxxxx> Subject: RE: [MySQL++]Good/Bad News:MinGW Support Date: Thu, 29 Dec 2005 23:01:33 -0500 I'm pretty sure it's looking for the mysql client library, libmysqlclient.dll (which ships with mysql), and that the function mysql_more_results is a C function in that library. Unfortunately, I'm not sure how you would link to that instead, since with all the building I've done, it's been automatically setup to link to libmysqlclient.dll (or at least the corresponding .lib). BTW, how'd you get it to compile? Make sure to let us know if you get this working! It would be SWEET. -Patrick -----Original Message----- From: Death Gauge [mailto:clay_hg@xxxxxxxxxxx] Sent: Thursday, December 29, 2005 9:16 PM To: plusplus@xxxxxxxxxxxxxxx Subject: [MySQL++]Good/Bad News:MinGW Support Good News: Got the lib to compile and the dll to work and the examples to compile with not a single error/warning/or problem. Bad News: The examples all return an error saying "The procedure entry point mysql_more_results could not be located in the dynamic link library LIBMYSQL.dll." Any ideas for fixing this problem? --Death Gauge "How do you gauge your death?!" _________________________________________________________________ Don't just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/ -- MySQL++ Mailing List For list archives: http://lists.mysql.com/plusplus To unsubscribe: http://lists.mysql.com/plusplus?unsub=p.s.mcmichael@xxxxxxxxxxxx -- MySQL++ Mailing List For list archives: http://lists.mysql.com/plusplus To unsubscribe: http://lists.mysql.com/plusplus?unsub=clay_hg@xxxxxxxxxxx _________________________________________________________________ Don't just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/ -- MySQL++ Mailing List For list archives: http://lists.mysql.com/plusplus To unsubscribe: http://lists.mysql.com/plusplus?unsub=p.s.mcmichael@xxxxxxxxxxxx -- MySQL++ Mailing List For list archives: http://lists.mysql.com/plusplus To unsubscribe: http://lists.mysql.com/plusplus?unsub=gcdmc-plusplus@xxxxxxxxxxx
|
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | RE: [MySQL++]Good/Bad News:MinGW Support, Death Gauge |
|---|---|
| Previous by Thread: | RE: [MySQL++]Good/Bad News:MinGW Support, Death Gauge |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
Free MagazinesCisco NewsReceive a free quarterly e-newsletter with exclusive articles on how Cisco IT uses its own products and solutions to enable the business. subscribe Systems Management News, the newspaper for IT systems administration and data center managers! Each issue of Systems Management News is chock-full of news and analysis to help you understand what's happening in your field. subscribe The Enterprise Newsweekly eWeek is the essential technology information source for builders of e-business. subscribe Oracle Magazine Oracle Magazine contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more. Oracle (NASDAQ: ORCL) is the world's largest enterprise software company. subscribe Total Telecom Total Telecom is "The Economist of the communications industry". subscribe |