flowdriveai / flowpilot

flow-pilot is an openpilot based driver assistance system that runs on linux, windows and android powered machines.
GNU General Public License v3.0
1.67k stars 240 forks source link

Cereal not building in Ubuntu 22.04 #42

Closed RaghavPrabhakar66 closed 1 year ago

RaghavPrabhakar66 commented 1 year ago

Describe the bug

In file included from /usr/include/capnp/common.h:29:
/usr/include/kj/string.h:24:10: fatal error: 'initializer_list' file not found
#include <initializer_list>
         ^~~~~~~~~~~~~~~~~~
1 error generated.
scons: *** [gen/cpp/car.capnp.os] Error 1
scons: building terminated because of errors.
➜  flowpilot git:(master) ✗ gcc --version
gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

To Reproduce Run scons in root directory.

Expected behavior Scons build succesfull.

Platform Details Desktop:

Additional context flowpilot currently works on ubuntu20.04, we should upgrade the requirements to make it compatible with more devices.

MankaranSingh commented 1 year ago

What branch is this ?

RaghavPrabhakar66 commented 1 year ago

Master, premium both. I have faced this issue since April. I have tried changing gcc version. I have even tried adding initializer_list header files manually but still no luck.

0312birdzhang commented 1 year ago

What you need is sudo apt install libstdc++-12-dev

RaghavPrabhakar66 commented 1 year ago

To run flowpilot on ubuntu 22.04+, #include <iterator> should be added to opendbc/can/dbc.cc. We should probably update opendbc to latest commit. Closing this issue for now.