Fehlermeldung bei Testprogramm -> Bedeutung?



  • Hallo,

    ich versuche mich gerade in mysql++ einzuarbeiten und bin auch bei C++ noch ein Neuling.

    Habe ein einfaches Testprogramm, das nur schauen soll, ob eine Verbindung zum SQL-Server hergestellt werden kann. Beim compilieren wirft mir VC++ 9.0 dann das aus:

    Kompilieren...
    sqltest1.cpp
    Verknüpfen...
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: char const * __thiscall mysqlpp::Connection::error(void)const " (__imp_?error@Connection@mysqlpp@@QBEPBDXZ)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual __thiscall mysqlpp::Connection::~Connection(void)" (__imp_??1Connection@mysqlpp@@UAE@XZ)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall mysqlpp::Query::`vbase destructor'(void)" (__imp_??_DQuery@mysqlpp@@QAEXXZ)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual __thiscall mysqlpp::StoreQueryResult::~StoreQueryResult(void)" (__imp_??1StoreQueryResult@mysqlpp@@UAE@XZ)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: char const * __thiscall mysqlpp::Query::error(void)const " (__imp_?error@Query@mysqlpp@@QBEPBDXZ)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) class std::basic_ostream > & __cdecl mysqlpp::operator<<(class std::basic_ostream > &,class mysqlpp::String const &)" (__imp_??6mysqlpp@@YAAAV?basic_ostream@DU?basic\_ostream@DU?char_traits@D@std@@@std@@AAV12@ABVString@0@@Z)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: class mysqlpp::String const & __thiscall mysqlpp::Row::operator[](int)const " (__imp_??ARow@mysqlpp@@QBEABVString@1@H@Z)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: class mysqlpp::Row & __thiscall std::vector >::operator[](unsigned int)" (__imp_??A?vector@VRow@mysqlpp@@V?vector@VRow@mysqlpp@@V?allocator@VRow@mysqlpp@@@std@@@std@@QAEAAVRow@mysqlpp@@I@Z)" in Funktion "main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: unsigned int __thiscall mysqlpp::StoreQueryResult::num_rows(void)const " (__imp
    ?num_rows@StoreQueryResult@mysqlpp@@QBEIXZ)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall mysqlpp::StoreQueryResult::operator bool mysqlpp::StoreQueryResult::*(void)const " (__imp_??BStoreQueryResult@mysqlpp@@QBEPQ01@_NXZ)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: class mysqlpp::StoreQueryResult __thiscall mysqlpp::Query::store(void)" (__imp_?store@Query@mysqlpp@@QAE?AVStoreQueryResult@2@XZ)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: class mysqlpp::Query __thiscall mysqlpp::Connection::query(char const *)" (__imp_?query@Connection@mysqlpp@@QAE?AVQuery@2@PBD@Z)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual bool __thiscall mysqlpp::Connection::connect(char const *,char const *,char const *,char const *,unsigned int)" (__imp_?connect@Connection@mysqlpp@@UAE_NPBD000I@Z)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall mysqlpp::Connection::Connection(bool)" (__imp_??0Connection@mysqlpp@@QAE@_N@Z)" in Funktion "_main".
    sqltest1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""bool __cdecl parse_command_line(int,char * * const,char const * *,char const * *,char const * *,char const * *,char const *)" (?parse_command_line@@YA_NHQAPADPAPBD111PBD@Z)" in Funktion "_main".

    Kann mir jemand bitte einen kurzen Hinweis geben, wo ich den Fehler suchen soll?

    Er scheint eine dll nicht richtig einbinden zu können, wenn ich das richtig interpretiere?

    Besten Dank + Grüße

    solick



  • Dem Linker kann einige implementationen nicht finden.
    Dazu musst Du dem Linker (via Projekt Settings) sagen, welche *.lib Dateien eingebunden werden sollen.
    Anscheinend geht es um irgend eine SQL Library...

    Simon



  • Off-Topic: Schau Dir mal SOCI an, bevor Du tiefer in mysqlpp einsteigst. Finde ich persönlich durchdachter und ausgereifter als mysqlpp, und es unterstützt mehr Datenbanken als nur MySQL.



  • Vielen Dnak Euch beiden. Vermutlich geht es um die mysql.lib... muss mal schauen, wo ich die einbinden kann.

    Zu SOCI: Worin liegt denn Deiner Meinung nach der Vorteil?

    Danke und Gruß solick



  • Die .lib-Datei stumpf dem Projekt hinzuzufügen sollte eigentlich schon reichen.



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Compiler- und IDE-Forum verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • @Fellhuhn: Danke, ja das hat zumindest einen Schritt weitergeholfen. Dummerweise bemängelt er jetzt, die Datei C:\Programme\mysql\mysql.obj nicht gefunden zu haben. In einem Forum habe ich gelesen, dass das mit Leerzeichen im SQL Installationsverzeichnis zu tun hat (Liegt in ..mysql\mysql server 5.1\..

    Das hieße, ich müsste mysql neu installieren...

    Grüße Solick


Anmelden zum Antworten