Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - linknx 0.0.1.30 und der mysql Support

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    - √ - linknx 0.0.1.30 und der mysql Support

    Hallo zusammen,

    ich setzte seit einigen Wochen Linknx 0.0.1.30 und knxweb2 ein. Soweit funktioniert das meiste.

    Für die Charts wollte ich nun zum speichern der Langzeit Werte auf mysql umsteigen. Leider bekomme ich beim Übersetzen von Linknx einige Fehlermeldungen.

    Code:
     -Wl,-Bsymbolic-functions -rdynamic -L/usr/lib/mysql -lmysqlclient_r -o linknx linknx.o logger.o ruleserver.o objectcontroller.o eibclient.o threads.o timermanager.o persistentstorage.o xmlserver.o smsgateway.o emailgateway.o knxconnection.o services.o suncalc.o luacondition.o ioport.o ../ticpp/libticpp.a -L/usr/lib -lpthsem  -llog4cpp -lnsl   -llua5.1   -lm -pthread -L/usr/lib -lesmtp -lssl -lcrypto -ldl 
    persistentstorage.o: In function `~MysqlPersistentStorage':
    /usr/local/src/linknx/src/persistentstorage.cpp:156: undefined reference to `mysql_close'
    persistentstorage.o: In function `MysqlPersistentStorage':
    /usr/local/src/linknx/src/persistentstorage.cpp:140: undefined reference to `mysql_init'
    /usr/local/src/linknx/src/persistentstorage.cpp:144: undefined reference to `mysql_options'
    /usr/local/src/linknx/src/persistentstorage.cpp:146: undefined reference to `mysql_real_connect'
    /usr/local/src/linknx/src/persistentstorage.cpp:149: undefined reference to `mysql_error'
    persistentstorage.o: In function `MysqlPersistentStorage::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
    /usr/local/src/linknx/src/persistentstorage.cpp:198: undefined reference to `mysql_real_query'
    /usr/local/src/linknx/src/persistentstorage.cpp:203: undefined reference to `mysql_store_result'
    /usr/local/src/linknx/src/persistentstorage.cpp:205: undefined reference to `mysql_num_rows'
    /usr/local/src/linknx/src/persistentstorage.cpp:215: undefined reference to `mysql_free_result'
    /usr/local/src/linknx/src/persistentstorage.cpp:221: undefined reference to `mysql_error'
    /usr/local/src/linknx/src/persistentstorage.cpp:207: undefined reference to `mysql_fetch_row'
    persistentstorage.o: In function `MysqlPersistentStorage::writelog(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
    /usr/local/src/linknx/src/persistentstorage.cpp:238: undefined reference to `mysql_real_query'
    /usr/local/src/linknx/src/persistentstorage.cpp:240: undefined reference to `mysql_error'
    persistentstorage.o: In function `MysqlPersistentStorage::write(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
    /usr/local/src/linknx/src/persistentstorage.cpp:179: undefined reference to `mysql_real_query'
    /usr/local/src/linknx/src/persistentstorage.cpp:181: undefined reference to `mysql_error'
    collect2: ld gab 1 als Ende-Status zurück
    make[2]: *** [linknx] Fehler 1
    make[2]: Verlasse Verzeichnis '/usr/local/src/linknx-0.0.1.30/src'
    make[1]: *** [all-recursive] Fehler 1
    make[1]: Verlasse Verzeichnis '/usr/local/src/linknx-0.0.1.30'
    make: *** [all] Fehler 2
    mein Configure Aufruf ist folgender

    Code:
    ./configure --with-lua --with-log4cpp  --enable-smtp --with-mysql=/usr/bin/mysql_config
    Ich setzte die aktuelle Ubuntu 11.10 (64bit) und mysql 5.1.61-0ubuntu0.11.10.1 ein.

    Hat bereits jemand eine Funktionierende Installation, und weiss was ich Falsch mache ?

    Danke, Gruss Mario

    #2
    Hallo Mario,

    gleich mal vorneweg: Das ist nicht mein Spezialgebiet und das fällt eher in die Kategorie "unqualifizierte Antwort":

    Die Fehlermeldungen könnten von fehlenden Header-Files kommen. Dafür gibts immer die Developer-Packages.

    Guck mal, ob es ein "mysql-....-dev" Paket gibt, das du nicht installiert hast.
    Ciao
    Olaf
    Nichts ist so gerecht verteilt, wie der Verstand.
    Jeder meint, genug davon zu haben.

    Kommentar


      #3
      Hallo Olaf,

      danke, für deine Antwort. Das mit den Dev Files ist mir während ich den Foren Eintrag geschrieben habe, auch gekommen.

      Deshalb hatte ich dies dann auch Überprüft. Und eigentlich sollten die benötigten Header Files installiert sein. Zumindest sind die u.a. Installiert.

      Code:
      ii  libmysqlclient-dev                     5.1.61-0ubuntu0.11.10.1                                      MySQL database development files
      Weitere konnte ich via apt-cache nicht finden.

      Jemand eine weitere Idee ?

      Danke, Gruss Mario

      Kommentar


        #4
        Hallo Mario,

        ich hatte das selbe Problem.
        Folgender Eintrag im configure Aufruf hat geholfen: export LIBS="-lmysqlclient_r"
        Ich habe es folgendermaßen gestartet:

        Code:
        sudo ./configure --without-lua --without-log4cpp  --enable-smtp --with-mysql=/usr/bin/mysql_config export LIBS="-lmysqlclient_r"
        SQL funktioniert bei mir mit knxweb2 und die Diagramme werden auch sauber dargestellt.
        Ich habe bis jetzt auch Ubuntu 11.10 benutzt und heute auf 12.04 das Update gemacht. Linknx Version ist ebenfalls 0.0.1.30.
        Ich hoffe damit geholfen zu haben.

        Gruss Mark

        Kommentar


          #5
          Hallo Mark,

          Perfekt, das wars. Vielen Dank für deine Hilfe.

          Gruss Mario

          Kommentar


            #6
            Woher habt ihr die entsprechenden Pakete zum Kompilieren?


            Möchte mal schauen, ob ich auf meinem debian squeeze Server die Dienste übersetzt und gestartet bekomme.

            Kommentar


              #7
              Was meinst Du genau ? Die linknx Quellen, oder die Linux Zusatz Header Files ?

              Also bei den zusätzlich benötigen Linux Files, sieht es wie folgt aus

              Für die Option :

              lua : liblua5.1-0-dev
              log4cpp : liblog4cpp5-dev
              smtp : libesmtp-dev
              sql : libmysqlclient-dev

              und möglicherweise einige weitere Dev Pakete. Ich gehe normalerweise so vor, dass ich mir die sourcen nehme, und dann einen ./configure und ein make mache. Und dann mir aus den Fehlermeldungen die Fehlenden Pakte nachinstalliere.

              Und die linknx Files von der Projekt Seite vom Anhtony

              Linknx | Free software downloads at SourceForge.net

              Gruss Mario

              Kommentar


                #8
                Meinte nicht die zusätzlichen, sondern die Pakete für den KNX-Dienst. Ist dies nicht auch noch der der eibd?

                Kommentar


                  #9
                  Ja, genau.

                  Bin gerade dabei einen Blog aufzusetzen, und einige Erfahrungen nieder zu schreiben. Soll auch als Doku für mich dienen

                  der erste Artikel ist zwar noch nicht fertig, aber es geht um dem eibd

                  Hoffmann im Internet

                  Gruss Mario

                  Kommentar


                    #10
                    Ok, danke. Der Anfang sieht schon mal gut aus ;-)

                    Jedoch fehlt mir z.B. die genaue URL der Quelle für apt, so dass ich diese in meiner source.list unter debian auch nutzen kann.

                    Kommentar


                      #11
                      Ich habe einen Eintrag für Debian User nachgezogen.

                      siehe Debian Packages

                      Code:
                      deb http://www.auto.tuwien.ac.at/~mkoegler/debian eib main
                      deb-src http://www.auto.tuwien.ac.at/~mkoegler/debian eib main

                      Kommentar


                        #12
                        Ok, danke.

                        Allerdings gibt es das Paket eibd nicht.

                        Code:
                        apt-cache search eibd
                        eibd-client-sources - Sources of the eibd client programs
                        eibd-clients - eibd clients
                        eibd-server - eibd server
                        libeibclient-dev - eibd client library
                        libeibclient0 - eibd client library
                        Ein entsprechendes Startskript kann ich unter /etc/init.d nicht finden...

                        Kommentar


                          #13
                          Korrekt, man hat es hier eib-server genannt. Ich würde Dir auch die Clients empfehlen. Denn dies sind einige Hilfreiche Tools. Gruss Mario

                          Kommentar


                            #14
                            Danke. Wie ist denn nun das weitere vorgehen, nachdem ich die Pakete installiert habe.

                            Kommentar


                              #15
                              Hallo Lenny,

                              Zitat von Lenny Beitrag anzeigen
                              Danke. Wie ist denn nun das weitere vorgehen, nachdem ich die Pakete installiert habe.
                              Im Lexikon hier im Forum gibts gute Beschreibungen zur Installation von eibd, linknx, knxweb, cometvisu, etc.

                              Hast du dort schon mal nachgesehen?
                              Ciao
                              Olaf
                              Nichts ist so gerecht verteilt, wie der Verstand.
                              Jeder meint, genug davon zu haben.

                              Kommentar

                              Lädt...
                              X