[vz-users] vzlogger c++ Version bauen

dl4huf dl4huf at t-online.de
Wed Jan 9 11:54:06 CET 2013


Hallo

ich versuche für einen Bekannten die vzlogger C++ Version nach Anleitung 
aus dem Wiki zu bauen.
Leider klappt das nicht und ich finde den fehlenden Kniff nicht.
Problem ist das die sml/sml_file.h nicht gefunden wird.
Beim Aufruf aus wie dem Wiki werden fehlenden Parameter SML_LiBRARY und 
SML_INCLUDE_DIR bemängelt, aber ich habe das so aufgerufen :

> root at rasp:/opt/src/build# cmake -DSML_LIBRARY='../libsml/sml/lib/libsml.a' -DSML_INCLUDE_DIR='../libsml/sml/include' ../vzlogger


> Compiling for target ''
> -- checking if -Wno-ignored-qualifiers works
> -- FindSml check
> -- checking for module 'sml>=0.9'
> --   package 'sml>=0.9' not found
> -- SML_HOME is not empty: "/opt/src/libsml"
> -- Looking for sml in /opt/src/libsml
> -- FindMicrohttpd check
> -- checking for module 'microhttpd>=0.9'
> --   package 'microhttpd>=0.9' not found
> -- MICROHTTPD_HOME env is not set, setting it to /usr/local
> -- Looking for microhttpd in /usr/local
> -- FindJson check
> -- JSON_HOME env is not set, setting it to /usr/local
> -- Looking for json in /usr/local
> Jsoon search: '/usr/local/include;/usr/local/include;/usr/local/include;/usr/include'
> -- FindCURL check
> -- ==> ''
> -- CURL_HOME env is not set, setting it to /usr/local
> -- Looking for curl in /usr/local
> ==> CURL_LIBRARIES='/usr/lib/arm-linux-gnueabihf/libcurl.a;/usr/lib/arm-linux-gnueabihf/libidn.a;/usr/lib/arm-linux-gnueabihf/libssh2.a;/usr/lib/arm-linux-gnueabihf/liblber.a;/usr/lib/arm-linux-gnueabihf/libldap.a;/usr/lib/arm-linux-gnueabihf/librt.a;-lgssapi_krb5;-lkrb5;-lk5crypto;/usr/lib/arm-linux-gnueabihf/libcom_err.a;/usr/lib/arm-linux-gnueabihf/libssl.a;/usr/lib/arm-linux-gnueabihf/libcrypto.a;/usr/lib/arm-linux-gnueabihf/librtmp.a;/usr/lib/arm-linux-gnueabihf/libz.a;/usr/lib/arm-linux-gnueabihf/libgnutls.a'
> -- FindGnuTls check
> -- ==> ''
> -- GNUTLS_HOME env is not set, setting it to /usr/local
> -- Looking for gnutls in /usr/local
> ==> GNUTLS_LIBRARIES='/usr/lib/arm-linux-gnueabihf/libgnutls.a;/lib/arm-linux-gnueabihf/libgcrypt.a;/usr/lib/arm-linux-gnueabihf/libgpg-error.a;/usr/lib/arm-linux-gnueabihf/libtasn1.a;/usr/lib/arm-linux-gnueabihf/libz.a;-lp11-kit;-lsasl2;/lib/arm-linux-gnueabihf/libgcrypt.a'
>
>         ***** Configuration parameters *****
>              prefix: /usr/local
>              json: -L/usr/lib/arm-linux-gnueabihf/libjson.a;-lrt -I/usr/include
>              sml:  -L/opt/src/libsml/sml/lib/libsml.a;-lrt -I/opt/src/libsml/sml/include
>              microhttpd: -L/usr/lib/arm-linux-gnueabihf/libmicrohttpd.a;-lrt -I/usr/include
> -- Configuring done
> -- Generating done
> -- Build files have been written to: /opt/src/build
> root at rasp:/opt/src/build#


sieht erst mal plausibel aus.
ein "make clean; make" läut aber nicht durch :-(
> root at rasp:/opt/src/build# make clean; make
> [  4%] Building CXX object src/CMakeFiles/vz.dir/Channel.cpp.o
> [  8%] Building CXX object src/CMakeFiles/vz.dir/Config_Options.cpp.o
> [ 12%] Building CXX object src/CMakeFiles/vz.dir/threads.cpp.o
> [ 16%] Building CXX object src/CMakeFiles/vz.dir/Buffer.cpp.o
> [ 20%] Building CXX object src/CMakeFiles/vz.dir/Obis.cpp.o
> [ 24%] Building CXX object src/CMakeFiles/vz.dir/Options.cpp.o
> [ 28%] Building CXX object src/CMakeFiles/vz.dir/Reading.cpp.o
> [ 32%] Building CXX object src/CMakeFiles/vz.dir/exception.cpp.o
> [ 36%] Building CXX object src/CMakeFiles/vz.dir/local.cpp.o
> /opt/src/vzlogger/src/local.cpp: In function ‘int handle_request(void*, MHD_Connection*, const char*, const char*, const char*, const char*, size_t*, void**)’:
> /opt/src/vzlogger/src/local.cpp:65:20: warning: variable ‘ts’ set but not used [-Wunused-but-set-variable]
> [ 40%] Building CXX object src/CMakeFiles/vz.dir/MeterMap.cpp.o
> Linking CXX static library libvz.a
> [ 40%] Built target vz
> [ 44%] Building CXX object src/api/CMakeFiles/vz-api.dir/Volkszaehler.cpp.o
> [ 48%] Building CXX object src/api/CMakeFiles/vz-api.dir/MySmartGrid.cpp.o
> [ 52%] Building CXX object src/api/CMakeFiles/vz-api.dir/CurlIF.cpp.o
> [ 56%] Building CXX object src/api/CMakeFiles/vz-api.dir/CurlCallback.cpp.o
> [ 60%] Building CXX object src/api/CMakeFiles/vz-api.dir/CurlResponse.cpp.o
> Linking CXX static library libvz-api.a
> [ 60%] Built target vz-api
> [ 64%] Building CXX object src/protocols/CMakeFiles/proto.dir/MeterS0.cpp.o
> [ 68%] Building CXX object src/protocols/CMakeFiles/proto.dir/MeterD0.cpp.o
> [ 72%] Building CXX object src/protocols/CMakeFiles/proto.dir/MeterSML.cpp.o
> /opt/src/vzlogger/src/protocols/MeterSML.cpp:47:26: fatal error: sml/sml_file.h: Datei oder Verzeichnis nicht gefunden
> compilation terminated.
> make[2]: *** [src/protocols/CMakeFiles/proto.dir/MeterSML.cpp.o] Fehler 1
> make[1]: *** [src/protocols/CMakeFiles/proto.dir/all] Fehler 2
> make: *** [all] Fehler 2
> root at rasp:/opt/src/build#

Die Datei "../libsml/sml/include/sml/sml_file.h" bzw.
"/opt/src/libsml/sml/include/sml/sml_file.h"
ist aber vorhanden.

Was fehlt hier ?
Wenn es klappt werde ich auch das Wiki entsprechend anpassen das andere 
nicht in die gleiche Falle laufen.
Und ja, ich mache das hie rauf einem rasperry, für den es ein fertiges 
Image gibt, aber es sollte ja trotzdem laut wiki gehen und bei meinem 
bekannten läuft schon der volkszähler auf dem rasperry mit 1W und 
S0-Zählern.

Danke Ronald









More information about the volkszaehler-users mailing list