Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:controller:vzlogger:installation_cpp-version

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
software:controller:vzlogger:installation_cpp-version [2019/03/17 15:22] – Debian Stretch jausoftware:controller:vzlogger:installation_cpp-version [2019/05/28 22:03] zugschlus
Zeile 6: Zeile 6:
 Unser Repository: https://github.com/volkszaehler/vzlogger\\ Unser Repository: https://github.com/volkszaehler/vzlogger\\
  
-Derzeit sind vzlogger und ein paar der Bibliotheken (Libraries) nur als Quellcode verfügbar. Diese müssen vor gebrauch kompiliert (übersetzt) werden. +Derzeit ist vzlogger und (auf manchen Plattformen) ein paar der Bibliotheken (Libraries) nur als Quellcode verfügbar. Diese müssen vor gebrauch kompiliert (übersetzt) werden. 
-Wechsle in ein Verzeichnis in dem dein Nutzer Schreibrechte hat. Zum Beispiel dein Home-Verzeichnis:+ 
 +Dies macht man praktischerweise in einem Verzeichnisin dem dein "normaler" Nutzer Schreibrechte hat. Zum Beispiel dein Home-Verzeichnis:
  
 <code> <code>
 cd ~ cd ~
 </code> </code>
 +
 +Die meisten Erfahrungen mit dem Bau des vzloggers bestehen mit Debian und verwandten Distributionen (Ubuntu, Raspbian). Die folgenden Anleitungen wurden im Mai 2019 mit Debian 10 "buster" verifiziert; Informationen für Versionen älter als Debian 9 "stretch" finden sich in der Historie dieser Seite.
  
 ===== Systemvoraussetzungen zur Kompilierung des vzlogger ===== ===== Systemvoraussetzungen zur Kompilierung des vzlogger =====
  
-Für eine erfolgreiche Kompilierung des vzlogger werden, neben gcc (4.7 oder neuer) und glibc, auch diese Libraries benötigt:+Für eine erfolgreiche Kompilierung des vzlogger werden, neben gcc und glibc, auch diese Libraries benötigt:
  
 === Tools === === Tools ===
-  * git (package: git-core)+  * git
   * cmake   * cmake
   * pkg-config   * pkg-config
Zeile 24: Zeile 27:
    
 === Erforderliche Libraries === === Erforderliche Libraries ===
-  * libjson >= 0.11 (>= 0.9 before [[https://github.com/volkszaehler/vzlogger/pull/106]]) +  * libjson-c-dev 
-  * libcurl3 >= 7.19 +  * libcurl4-openssl-dev 
-  * libgnutls-dev+  * libgnutls28-dev
   * libgcrypt   * libgcrypt
   * libsasl2-dev   * libsasl2-dev
Zeile 34: Zeile 37:
   * libltdl >=0.8.0 (for OMS)   * libltdl >=0.8.0 (for OMS)
   * libleptonica-dev (for OCR)   * libleptonica-dev (for OCR)
 +  * libmosquitto-dev (for MQTT)
   * libunistring-dev (wegen Problem mit Ubuntu 18.04)   * libunistring-dev (wegen Problem mit Ubuntu 18.04)
  
  
 === Debian Pakete === === Debian Pakete ===
-Für Distributionen die auf Debian "Jessie" oder "Stretch" basieren können die meisten dieser Abhängigkeiten folgendermaßen installiert werden: 
-(eventuell erstmal "apt-get update" als root ausführen) 
-<code>sudo apt-get install build-essential git-core cmake pkg-config subversion libcurl4-openssl-dev libgnutls28-dev libsasl2-dev uuid-dev libtool libssl-dev libgcrypt20-dev libmicrohttpd-dev libltdl-dev libjson-c-dev libleptonica-dev libunistring-dev dh-autoreconf</code> 
  
-Für Debian "Wheezy": +Für auf Debian "stretchbasierende Distributionen können die meisten dieser Abhängigkeiten mit: 
-<code>sudo apt-get install build-essential git-core cmake pkg-config subversion libcurl3-dev libgnutls-dev libsasl2-dev uuid-dev libtool libmicrohttpd-dev libcurl4-openssl-dev libssl-dev libltdl-dev libleptonica-dev libunistring-dev dh-autoreconf</code>+ 
 +<code>sudo apt-get install build-essential git-core cmake pkg-config subversion libcurl4-openssl-dev libgnutls28-dev libsasl2-dev uuid-dev libtool libssl-dev libgcrypt20-dev libmicrohttpd-dev libltdl-dev libjson-c-dev libleptonica-dev libmosquitto-dev libunistring-dev dh-autoreconf</code> 
 +installiert werden. Eventuell erstmal <code>sudo apt-get update</code> ausführen.
  
 ===== Build per Script ===== ===== Build per Script =====
Zeile 53: Zeile 56:
 </code> </code>
  
-Das Script bietet auch die Möglichkeit nur einzelne Module zu übersetzen. Details dazu findet man als Kommentar im Script.+Das Script bietet auch die Möglichkeitnur einzelne Module zu übersetzen. Details dazu findet man als Kommentar im Script.
  
 === Hintergrunddienst === === Hintergrunddienst ===
Zeile 59: Zeile 62:
  
 === Aktualisierung === === Aktualisierung ===
-Falls der vzlogger aktualisiert werden soll ist wie folgt vorzugehen:+ 
 +Zum Aktualisieren des vzlogger dient diese Prozedur:
 <code> <code>
 sudo systemctl stop vzlogger sudo systemctl stop vzlogger
Zeile 68: Zeile 72:
 </code> </code>
  
-Die zugrundeliegenden SML Bibliothek kann (vorher) aktualisiert werden indem:+Die zugrundeliegende SML Bibliothek kann (vorher) aktualisiert werdenindem:
 <code> <code>
 cd vzlogger/libs/libsml cd vzlogger/libs/libsml
Zeile 77: Zeile 81:
  
 ===== Build von Hand ===== ===== Build von Hand =====
 +
 Falls das Script nicht zu den Gegenheiten passt nachfolgend die einzelnen Schritte. Falls das Script nicht zu den Gegenheiten passt nachfolgend die einzelnen Schritte.
 <note warning>Nur für geübte User! Wer wenig Erfahrung hat sollte den [[software:controller:vzlogger:installation_cpp-version#build_per_script|Build per Script]] machen.</note> <note warning>Nur für geübte User! Wer wenig Erfahrung hat sollte den [[software:controller:vzlogger:installation_cpp-version#build_per_script|Build per Script]] machen.</note>
- 
-=== Building libjson === 
-Libjson sollte direkt aus den Quellen übersetzt werden. 
-<code> 
-git clone -b json-c-0.12 https://github.com/json-c/json-c 
-cd json-c 
-sh autogen.sh 
-./configure 
-make 
-sudo make install 
-</code> 
- 
-Zurück zum Ausgangsverzeichnis: <code>cd ..</code> 
- 
-=== Building libsml === 
-<code> 
-git clone https://github.com/volkszaehler/libsml.git 
-cd libsml 
-sudo make 
-</code> 
-Libsml bietet kein 'make install' Vorgabe. 
- 
-Man macht das manuell in dem man die folgenden Dateien und Verzeichnisse kopiert: 
-<code> 
-sudo cp sml/lib/libsml.* /usr/lib/ 
-sudo cp -R sml/include/* /usr/include/ 
-sudo cp sml.pc /usr/lib/pkgconfig/ 
-</code> 
- 
-Zurück zum Ausgangsverzeichnis: <code>cd ..</code> 
  
 === Building vzlogger === === Building vzlogger ===
Zeile 122: Zeile 97:
 </code> </code>
  
-Falls es Probleme mit libsml gibt statt nur "cmake .." versuchen:+Zurück zum Ausgangsverzeichnis: <code>cd ../..</code> 
 + 
 +== Bau als Debian-Paket == 
 + 
 +Das vzlogger Repository enthält ebenfalls Code, um ein "sauber" installier- und deinstallierbares Debian-Paket zu bauen.  
 <code> <code>
-cmake .. -DSML_HOME=/path/to/libsml+git clone https://github.com/volkszaehler/vzlogger.git 
 +cd vzlogger 
 +apt build-dep ./ 
 +apt install devscripts 
 +debuild
 </code> </code>
  
-Zurück zum Ausgangsverzeichnis: <code>cd ../..</code> 
  
 === Building OMS === === Building OMS ===
software/controller/vzlogger/installation_cpp-version.txt · Zuletzt geändert: 2024/02/04 11:25 von jau