c-jimenez/open-ocpp

Problème d'installation sur raspberry

rcuquemelle opened this issue · 5 comments

Bonjour,
J'essaye actuellement d'installer le soft sur une Raspberry pi mais j'ai une erreur lors de la compilation.
Sur quelle plateforme a été déployé ce soft ? Que sur pc linux ?

Bonjour,
J'ai fait des essais sur Linux x64 et sur un Linux aarch64 sur board custom.
Quelles sont vos erreurs de compilation?

Bonjour,
Merci pour ce premier retour :

Voici mon erreur :

Scanning dependencies of target test_queue
[ 53%] Building CXX object tests/tools/CMakeFiles/test_queue.dir/test_queue.cpp.o
/home/pi/open-ocpp/src/tools/log/LogDatabase.cpp: In member function ‘void ocpp::log::LogDatabase::log(time_t, unsigned int, const string&, const string&)’:
/home/pi/open-ocpp/src/tools/log/LogDatabase.cpp:46:42: error: call of overloaded ‘bind(int, time_t&)’ is ambiguous
46 | m_insert_query->bind(0, timestamp);
| ^
In file included from /home/pi/open-ocpp/src/tools/log/LogDatabase.h:22,
from /home/pi/open-ocpp/src/tools/log/LogDatabase.cpp:19:
/home/pi/open-ocpp/src/tools/database/./Database.h:107:14: note: candidate: ‘bool ocpp::database::Database::Query::bind(int, bool)’
107 | bool bind(int number, bool value);
| ^~~~
/home/pi/open-ocpp/src/tools/database/./Database.h:115:14: note: candidate: ‘bool ocpp::database::Database::Query::bind(int, double)’
115 | bool bind(int number, double value);
| ^~~~
/home/pi/open-ocpp/src/tools/database/./Database.h:123:14: note: candidate: ‘bool ocpp::database::Database::Query::bind(int, int32_t)’
123 | bool bind(int number, int32_t value);
| ^~~~
/home/pi/open-ocpp/src/tools/database/./Database.h:131:14: note: candidate: ‘bool ocpp::database::Database::Query::bind(int, uint32_t)’
131 | bool bind(int number, uint32_t value);
| ^~~~
/home/pi/open-ocpp/src/tools/database/./Database.h:139:14: note: candidate: ‘bool ocpp::database::Database::Query::bind(int, int64_t)’
139 | bool bind(int number, int64_t value);
| ^~~~
/home/pi/open-ocpp/src/tools/database/./Database.h:147:14: note: candidate: ‘bool ocpp::database::Database::Query::bind(int, uint64_t)’
147 | bool bind(int number, uint64_t value);
| ^~~~
make[3]: *** [src/tools/log/CMakeFiles/log.dir/build.make:82: src/tools/log/CMakeFiles/log.dir/LogDatabase.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....

Pour info ma configuration :

PRETTY_NAME="Raspbian GNU/Linux 11 (bullseye)"
NAME="Raspbian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

Linux raspberrypi 5.10.103-v7l+ #1529 SMP Tue Mar 8 12:24:00 GMT 2022 armv7l GNU/Linux

Merci,

Le problème devait venir du fait que le compilateur soit 32bits ou définisse le type time_t en entier 32bits.
La branche fix/raspberry_build devrait fixer ce problème.
Merci de me signaler si c'est le cas que je puisse merger cette modification.

Bonjour,

J'ai récupéré la branche et cette fois ci la compilation a marché. J'ai pu lancé le centralsystem et le chargepoint sans erreur.

Merci encore.

Bonne journée.

Fixed with PR#70