[vz-users] vzlogger unter FreeBSD
Oliver Lehmann
lehmann at ans-netz.de
Sun Mar 1 00:46:25 CET 2015
Hi,
ich versuche vzlogger unter FreeBSD zum laufen zu bewegen.
Nachdem ich ein paar Compilefehler in MeterD0.cpp bereinigt habe,
und das Makefile angepasst habe damit bei deaktiviertem SML auch
wirklich keine SML relevanten Files gebaut werden, scheitert es
nun am Linker:
- die ersten 2 sind simpel... ersetze ich durch "hugo" im File.
- wahrscheinlich fehlt hier der git-replace beim checkout?
- scheint in master.zip nicht statt zu finden...
- CurlSessionProvider.cpp wird hier nicht compiliert.
- habe es manuell unter src/ compiliert
- ein include für <cerrno> fehlt (EAGAIN, ETIMEDOUT)
- die Fehler in threads.cpp sind etwas strange...
gmake[2]: Entering directory '/root/vzlogger-master/src'
g++48 -g -O2 -lpthread -lm -lstdc++ -ljson-c -L/usr/local/lib -lcurl
-o vzlogger vzlogger.o Channel.o Config_Options.o threads.o
Buffer.o Meter.o ltqnorm.o Obis.o Options.o Reading.o exception.o
local.o MeterMap.o MeterS0.o MeterD0.o MeterFluksoV2.o MeterFile.o
MeterExec.o MeterRandom.o Volkszaehler.o MySmartGrid.o CurlIF.o
CurlCallback.o CurlResponse.o -L/usr/local/lib -lmicrohttpd -lcrypto
vzlogger.o: In function `config_parse_cli(int, char**, Config_Options*)':
/root/vzlogger-master/src/vzlogger.cpp:283: undefined reference to
`g_GIT_SHALONG'
/root/vzlogger-master/src/vzlogger.cpp:284: undefined reference to
`g_GIT_LAST_COMMIT_DATE'
vzlogger.o: In function `main':
/root/vzlogger-master/src/vzlogger.cpp:369: undefined reference to
`CurlSessionProvider::CurlSessionProvider()'
/root/vzlogger-master/src/vzlogger.cpp:369: undefined reference to
`curlSessionProvider'
/root/vzlogger-master/src/vzlogger.cpp:471: undefined reference to
`curlSessionProvider'
/root/vzlogger-master/src/vzlogger.cpp:472: undefined reference to
`CurlSessionProvider::~CurlSessionProvider()'
/root/vzlogger-master/src/vzlogger.cpp:473: undefined reference to
`curlSessionProvider'
threads.o: In function `logging_thread(void*)':
/root/vzlogger-master/src/threads.cpp:199: undefined reference to
`vz::api::Null::Null(std::tr1::shared_ptr<Channel>, std::list<Option,
std::allocator<Option> >)'
MeterMap.o: In function `MeterMap::registration()':
/root/vzlogger-master/src/MeterMap.cpp:130: undefined reference to
`vz::api::Null::Null(std::tr1::shared_ptr<Channel>, std::list<Option,
std::allocator<Option> >)'
Volkszaehler.o: In function `vz::api::Volkszaehler::send()':
/root/vzlogger-master/src/api/Volkszaehler.cpp:114: undefined
reference to `curlSessionProvider'
/root/vzlogger-master/src/api/Volkszaehler.cpp:114: undefined
reference to `curlSessionProvider'
/root/vzlogger-master/src/api/Volkszaehler.cpp:114: undefined
reference to `CurlSessionProvider::get_easy_session(std::string, int)'
/root/vzlogger-master/src/api/Volkszaehler.cpp:140: undefined
reference to `curlSessionProvider'
/root/vzlogger-master/src/api/Volkszaehler.cpp:141: undefined
reference to `curlSessionProvider'
/root/vzlogger-master/src/api/Volkszaehler.cpp:141: undefined
reference to `CurlSessionProvider::return_session(std::string, void*&)'
somit bleibt übrig:
g++48 -g -O2 -lpthread -lm -lstdc++ -ljson-c -L/usr/local/lib -lcurl
-o vzlogger vzlogger.o Channel.o Config_Options.o threads.o
Buffer.o Meter.o ltqnorm.o Obis.o Options.o Reading.o exception.o
local.o MeterMap.o MeterS0.o MeterD0.o MeterFluksoV2.o MeterFile.o
MeterExec.o MeterRandom.o Volkszaehler.o MySmartGrid.o CurlIF.o
CurlCallback.o CurlResponse.o CurlSessionProvider.o -L/usr/local/lib
-lmicrohttpd -lcrypto
threads.o: In function `logging_thread(void*)':
/root/vzlogger-master/src/threads.cpp:199: undefined reference to
`vz::api::Null::Null(std::tr1::shared_ptr<Channel>, std::list<Option,
std::allocator<Option> >)'
MeterMap.o: In function `MeterMap::registration()':
/root/vzlogger-master/src/MeterMap.cpp:130: undefined reference to
`vz::api::Null::Null(std::tr1::shared_ptr<Channel>, std::list<Option,
std::allocator<Option> >)'
collect2: error: ld returned 1 exit status
Makefile:282: recipe for target 'vzlogger' failed
gmake: *** [vzlogger] Error 1
Exit 2
Hilfe! ;)
Grüße, Oliver
More information about the volkszaehler-users
mailing list