Ergebnis 1 bis 6 von 6

Thema: monitord - Projekt geht noch was oder eingeschlafen? und Windows kompilieren…

  1. #1
    Registriert seit
    29.04.2016
    Beiträge
    5

    monitord - Projekt geht noch was oder eingeschlafen? und Windows kompilieren…

    Hallo

    Das Projekt scheint eingeschlafen zu sein… oder?
    Immer mehr Links zum Projekt gehen nicht mehr:
    z.B:
    http://tinyurl.com/monitord-nightly
    oder
    http://svn.monitord.de/monitor

    Die letzte noch funktionierenden Möglichkeiten an Quellen zu kommen ist der
    Tarball:
    http://builds.monitord.de/monitor-trunk.tar.bz (28.07.2016, 05:00 Uhr)
    Oder von Schakko:
    https://github.com/schakko/monitord

    Es wir aber leider immer weniger an Informationen und Entwicklungen...

    Nach dem ich gefühlt 4 mal alle Beiträge zum Thema „monitord“, hier gelesen haben, ergibt sich mir folgendes Bild:
    Für Windows war das Projekt zum letzten mal um 2011 kompilierbar danach wurde es nur noch für Linux ohne Rücksicht auf Windows weiter entwickelt/verändert.
    Es gibt zwar eine gute Anleitung vom User mdi von 01.03.2008…….
    Da sich aber Windows, mingw/msys und monitord weiter entwickelt haben, kann man diese Anleitung nur noch als grobe Richtung verwenden.

    Mein Problem war/ist, dass ich FMS32pro durch monitord zur Auswertung ersetzten möchte, da monitord gerade im Bereich FMS besser auswertet.
    Die Windows-Installationspakete auf der monitord – Homepage (sind von 2011) und funktionieren auch gut nur wird im FMS32 Protokoll die Werte für die Soundkarte und den Kanal statisch auf „0“ „0“ gesetzt.
    Eine Antwort wie das Problem behoben werden kann – hat hier der User Buebchen am 18.06.2016 hier reingestellt – dafür ein Dankeschön – hat funktioniert!!!
    Das eigentliche Problem hat damit aber erst begonnen denn für Windows benötigt man eine mingw/msys Umgebung.
    Nach nun ca. 7 Monaten (natürlich nicht am Stück 😉) habe ich es geschafft eine lauffähige Version von monitord für Windows zu kompilieren mit lua und lame jedoch leider ohne mysql das klappt bis jetzt noch nicht.
    Deshalb möchte ich hier etwas zu meiner Entwicklungsumgebung und den Erfahrungen berichten – vielleicht hilft es ja auch anderen etwas weiter.
    Das folgende hat natürlich keinen Anspruch auf Vollständigkeit und ist nach dem Motto:
    quick and dirty und try and error entstanden...

    Ob es ein guter oder einfach nur funktionierender Weg war/ist ….???

    1. Mingw/msys installieren – hier habe ich mich an die Anleitung unter http://www.mingw.org/ gehalten --> hat gut funktioniert.
    2. GNU C bzw. GNU C++ muss man in der alten Version 4.6.x installieren mit 4.7.x und stäter lässt sich das Projekt nicht kompilieren.
    3. Aufräumen des Projekts vor dem ersten ./configure und make:
    ........a. make uninstall (kann ich zwar nicht erklären aber danach bin ich weiter gekommen)
    ........b. make clean
    ........c. rm folgender Dateien: config.log libtool stamp-h1 Makefile config.status config.guess config.sub depcomp install.sh config.h.in configure aclocal.m4 ltmain.sh config.h.in~
    4. ./autogen.sh

    Es sind zum Teil einfach zu viele Altlasten drin mit denen man für Windows nix bauen kann.

    Die alte Anleitung von mdi für Windows mit:
    ./configure --enable-plugins --with-mysql --with-lame --with-lua
    make
    und auch einfach mit:
    ./configure
    make
    geht leider nicht mehr – zumindest in meiner Umgebung nicht:
    Nach extrem langen suchen und testen habe ich es doch noch geschafft, eine lauffähige Windows-Version zu bauen:
    mit:
    LDFLAGS="-static-libgcc -static" CC="gcc -static-libgcc" ./configure
    make
    Ohne Plugins
    oder mit:
    LDFLAGS="-static-libgcc -static" CC="gcc -static-libgcc" ./configure --prefix=/mingw/local/ --enable-plugins --with-l
    ua-prefix=/local/bin/ --with-lua-includes=/local/include/ --with-lua-libraries=/local/lib/ --with-lame
    make
    für lua und lame

    lua und lame muss natürlich zuerst installiert werden.
    lua läuft mit der Version 5.1.5 ganz gut
    lame habe ich mit der enthaltenen Version 3.97 installiert.

    Zum bauen eines Installationspakets wird nsis benötigt. Zuerst sollte man die Datei monitor.nsi bzw. monitor.nsi.in im Verzeichnis Win32-nsis anpassen - also die Pfade entsprechen anpassen (z.B. C:\MinGW\msys\1.0\home\Xxxxxx\trunk\.....) also Windows -Absolut sonst baut der nsis nix!

    Damit habe ich nun eine lauffähige Version von monitord erstellt und erfolgreich unter Win 10 pro und Windows Server 2008 R2 installiert - läuft auch ganz gut als Dienst.

    Zum einrichten als Dienst unter Windows habe ich noch folgende Erfahrung gemacht:
    Man sollte den monitord unter C:\monitord\ installieren sonst muss man die Pfade in der .bat anpassen.
    In der monitord.xml musste ich jedoch die Pfade Windows - Absolut eingeben sonst funktioniert monitord als Dienst nicht richtig:
    C:\monitord\monitord.log
    C:\monitord\socketfilter.lua
    C:\monitord\pluginfilter.lua
    C:\monitord\audio.log
    usw.

    leider bekomme ich monitord mit --with-mysql nicht erzeugt:
    LDFLAGS="-static-libgcc -static" CC="gcc -static-libgcc" ./configure --prefix=/mingw/local/ --enable-plugins --with-mysql
    kommt:
    checking mysql/mysql.h usability... no
    checking mysql/mysql.h presence... no
    checking for mysql/mysql.h... no
    configure: error: mysql.h not found

    Die Dateien sind da - werden aber nicht erkannt... - hat jemand noch eine Idee???

    Viele Grüße
    Holger
    Geändert von HolgerS (30.03.2017 um 13:41 Uhr)

  2. #2
    Registriert seit
    26.08.2015
    Beiträge
    45
    Ich muss jetzt mal ganz dumm ranfragen, du hast 7 Monate an einer Lösung mit Win +monitord gebastelt. Bist nach 7 Monaten immer noch nicht soweit das das ganze Projekt vollständig und zuverlässig läuft. Warum willst du dieses anscheinend schon nahezu tote Pferd noch weiter reiten? Deine Anstrengungen/Mühen sind beachtlich, allerdings denke ich, dass sobald du mal eine neue Version von monitord kompilieren willst, du unter Umständen von vorne anfängst und wieder Abhängigkeiten und sonnst was unter Win nachbilden musst.

    An dieser Stelle hätte ich dir geraten, wenn das Projekt anscheinend gut unter GNU/Linux läuft, das doch dort auch zu betreiben. Ich selbst habe mir mit rtl_fm, multimon-ng und python einen Telegram Bot gebaut und muss sagen, das Teil läuft auf nem kleinen Raspberry Pi mit raspbian tadellos. Das Projekt war grundsätzlich nach ca. 2 Wochen Entwicklungszeit lauffähig und läuft nun seit 3 Monaten durch.

    Verstehe das bitte nicht falsch, ich möchte nicht deinen Tatendrang an sich kritisieren, ich bin aber der Meinung das man die bis dato geleistete Energie auch hätte noch anders verwenden können ;-)

  3. #3
    Registriert seit
    29.04.2016
    Beiträge
    5
    Dankeschön für die (Antwort) Meldung!

    OK da hast Du mich etwas falsch verstanden.... ;-)

    Ersten es gibt grundsätzlich keine dummen Fragen... ;-)
    Zweitens der monitord läuft schon seit vielen Wochen bzw. ohne Plugins seit mehr 3 Monaten sehr stabil, das einzige was jetzt noch fehlt ist das mysql Plugin was aber auch zur Zeit nicht benötigt wird!
    Drittens habe ich nicht 7 Monate am Stück dran gearbeitet sondern immer mal wieder ein paar wenige Stunden!

    Da war auch etwas Neugier dabei, ob das ganz noch zum laufen zu bringen ist!

    Weiter war das Ziel, auf einem Win Server 2008 der in einem ELW1 schon lange Eingebaut ist und FMS32pro läuft, dessen Auswerter durch monitord zu ersetzten!

    monitord habe ich selber bei mir unter einem Raspberry pi 3 schon länger am laufen - für das System im ELW macht es ganze schon mehr Probleme da 4 Kanäle überwacht werden sollen und somit 2 USB Soundkarten dann benötigt werden und somit wieder ein aktiver USB Hub usw usw.

    Und zum Thema Linux vers. Windows im Bezug auf monitord:
    Die binden Installerpakete aus dem Jahr 2011 von User mdi auf www.monitord.de, installiert man einfach und es läuft sehr gut auf Win XP bis Win 10 und auf Win Server 2003 bis Win Server 2012...... gefehlt hat, dass im FMS32pro Protokoll die Nr. der Soundkarte und der Kanal einfach statisch ausgegeben werden, sonst waren mir keine Probleme bekannt.
    Bei Linux gibt es doch erst mal erhebliche Probleme - sind alle dev Pakete installiert, hat man die richtige GNU C bzw. GNU C++ Version usw.
    Meiner Erfahrung nach mit dem Raspberry pi 3 und Monitord und die vielen Beiträgt hier zeigen ja auch erhebliche Probleme bis das ganze auf Linux so läuft!

    Des weiteren kann man es ja auch mal so betrachten - jetzt habe ich Erfahrungen mit mingw/msys gesammelt....

    Aber unabhänig ob Linix oder Windows ob PC oder Raspberry,
    Meine Frage nach dem Problem mit dem mysql Plugin besteht immer noch - ob das nun das reiten eines Toten Pferdes ist oder nicht...

    Dir Frage ist doch wir das gesamte Projekt nicht weiter entwickelt? wenn nicht, dann habe ich ja meine eigene Umgebung auf deren Basis ich für Linux und Windows für mich selbst weiter entwickeln kann.


    Viele Grüße
    Holger

  4. #4
    Registriert seit
    26.08.2015
    Beiträge
    45
    Das mit den 7 Monaten hatte ich schon gelesen, allerdings läuft das Projekt an sich ja schon so lange ;-)

    Soweit ich weis sind die *.h Files doch Header Files die beim Kompilieren mit angelegt werden. Wenn dem so ist wären grundsätzlich 2 Möglichkeiten in betracht zu ziehen:

    1) Es gibt für Windows die *-dev Packages zum nachinstallieren,. welche dann die passenden Header Files bei dir installieren. Ich glaube aber das das eher unwahrscheinlich ist.
    2) Du kompilierst die den MySQL Server selbst und erzeugst dir somit selbst die Header Files.

    Sollten die Header Files schon wo rumliegen, müsstest du ja "nur" den entsprechenden Pfad als Option beim ./configure mitgeben.


    Als Alternative kannst du dir ja mal Radio-Operator anschauen, das kann glaube ich auch FMS/POCSAG/ZVEI.
    Habe das aber noch nicht weiter ausprobiert. Von den Screenshots her scheint das aber ganz vernünftig zu sein.

    Im Bezug auf Soundkarten kannst du dir mal rtl_fm anschauen bzw. die passenden DVB-T Sticks dazu.
    Ist echt eine Günstige und vor allem zuverlässige Variante.
    Ich nutze das hier in Verbindung mit nem Raspi schon an 2 Standorten zur POCSAG Auswertung.
    Da kann man auch ohne weitere Probleme 4 Frequenzen parallel verarbeiten.



    Mit dem Erfahrung sammeln hast du natürlich recht ;-)
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	photo5400366903488260016.jpg 
Hits:	164 
Größe:	188,4 KB 
ID:	16978  

  5. #5
    Registriert seit
    11.12.2001
    Beiträge
    1.008
    Also von meiner Seite wird es da keine Entwicklung mehr geben. Einfach, weil ich seit Jahren nix mehr in dem Bereich mache. Ich hätte noch nicht mal eine Signalquelle hier um's testen zu können.

    Zum Fehler:

    Das sieht anhand der Fehlermeldung so aus, als ob die mysql.h nicht gefunden wird. Gesucht wird im Include-Pfad des Compilers die Einträge sind in dem Format -I/bla/bla/pfad .

    Ich denke da könnte man ansetzen. Dann aber in CFLAGS setzen, da der Compiler den Pfad braucht. Nicht LDFLAGS - die bekommt erst der Linker präsentiert (so sollte es zumindest sein). Ich meine auch, daß man den Pfad bis zum Order "mysql" angab. Ohne den Ordner mysql selbst. Aber ist schon ein paar Tage her ...

    Den mysql Server brauchst Du mal auf keinen Fall zu kompilieren. Da sind nachher auch nicht mehr *.h Files da als vorher ;)

    Radio-Operator hatte zu Beginn übrigens den gleichen "Auswerterkern" genutzt. Also den vom multimon / monitord.

  6. #6
    Registriert seit
    29.04.2016
    Beiträge
    5
    @Buebchen
    Dankeschön für die Antwort - genau in der Richtung lag das Problem!

    mit
    CFLAGS="-I/local/include" wurden die MySQL *.h Dateien gefunden
    Es musste dann noch -L/local/lib" wegen der lbmysql.a bei den CFLAGS und bei LDFLAGS eingefügt werden.

    Das letzte Problem war dann noch die Definition der Funktion mysql_init diese gibt es nur noch als mysql_init@4
    Gelöst habe ich das dadurch, dass ich mysql_init in die libmysql.def von Hand eingefügt habe.

    Mit folgendem ./confugure Aufruf habe ich nun seit Freitag eine lauffähige und installierbare moniord Version für Windows mit lua, lame und MySQL.

    ./configure LDFLAGS="-static-libgcc -static -L/local/lib" CC="gcc -static-libgcc -static-libstdc++ -I/local/include -
    L/local/lib" CFLAGS="-I/local/include -L/local/lib" --prefix=/mingw --disable-static --enable-shared --enable-plugins -
    -with-lua-prefix=/local/bin --with-lua-includes=/local/include --with-lua-libraries=/local/lib --with-lame --with-mysql

    Das System ist nun über das ganze Wochenende mehr als 70 Stunden als Windows-Dienst gelaufen und hat über 2 Soundkarten 4 Kanäle zuverlässig ausgewertet und in die MySQL Datenbank lua gefiltert geschrieben. Es waren 8 Socket-Verbindungen dabei ohne Unterbrechung aktiv.

    @ Scripter
    Auch Dir eine Dankeschön für den Tipp.

    Um es etwas besser zu erklären - ich muss hier privat (Entwicklungsumgebung) und dienstlich ELW und Zentrale unterscheiden.

    Dienstlich sind Windows Server 2008 R2 und FMS32pro vorgegeben und die Signale kommen von 4 FuG 8b-1...
    Und als wir gegen Feb 2016 den Monitord in der 2011 für Windows Version, als Ersatz für den Auswerter des FMS32pro, installiert haben, hat das sofort funktioniert nur die Auswertung der Soundkarte hat im FMS32 Protokoll gefehlt - deshalb auch der Aufwand.

    Privat hatte ich den Monitord schon 2013 auf einem alten PC mit openSUSE installiert und einige Zeit genutzt.
    Aktuell läuft der Monitord bei mir zu Test- und Entwicklungszwecken auf einem Raspberry pi 3 mit Raspbian jessie und 2 USB Soundkarten behringer U-CONTROL UCA222
    sehr zuverlässig.
    Das mit dem DVB-T+DBA+FM Stick und RTL_fm werde ich dem nächst Wochen auch mal testen da ich so ein Stick schon habe.
    Weiter habe ich die Windows Version auf meine Laptop unter Win 10 auch am laufen.

    Grüße
    Holger
    Geändert von HolgerS (05.04.2017 um 12:52 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •