Failure building burn_my_bmc

Patrick Venture venture at google.com
Sat Nov 21 07:13:10 AEDT 2020


On Fri, Nov 20, 2020 at 11:33 AM William Kennington <wak at google.com> wrote:
>
> Just make sure you have span-lite installed first if you are installing everything locally https://github.com/martinmoene/span-lite

William, if that isn't in the instructions, please update them.

Thanks!

>
> On Wed, Nov 18, 2020 at 7:28 PM Patrick Venture <venture at google.com> wrote:
>>
>> On Wed, Nov 18, 2020 at 3:18 PM Patrick Voelker
>> <Patrick_Voelker at phoenix.com> wrote:
>> >
>> > I'm having an issue building burn_my_bmc with the instructions listed on https://github.com/openbmc/phosphor-ipmi-flash . Got through building all the dependencies but I get the following errors when building
>> pci.cpp.  Looks like maybe stdplus changed?
>>
>> William, PTAL, thanks!
>>
>> >
>> > pvoelker at bmc-dev:~/bmc/host-tool/phosphor-ipmi-flash$ make
>> > make  all-recursive
>> > make[1]: Entering directory '/home/pvoelker/bmc/host-tool/phosphor-ipmi-flash'
>> > Making all in .
>> > make[2]: Entering directory '/home/pvoelker/bmc/host-tool/phosphor-ipmi-flash'
>> >   CXX      internal/libfirmware_common_la-sys.lo
>> >   CXXLD    libfirmware_common.la
>> > ar: `u' modifier ignored since `D' is the default (see `U')
>> > make[2]: Leaving directory '/home/pvoelker/bmc/host-tool/phosphor-ipmi-flash'
>> > Making all in tools
>> > make[2]: Entering directory '/home/pvoelker/bmc/host-tool/phosphor-ipmi-flash/tools'
>> > Making all in .
>> > make[3]: Entering directory '/home/pvoelker/bmc/host-tool/phosphor-ipmi-flash/tools'
>> >   CXX      libupdater_la-updater.lo
>> >   CXX      libupdater_la-handler.lo
>> >   CXX      libupdater_la-helper.lo
>> >   CXX      libupdater_la-bt.lo
>> >   CXX      libupdater_la-lpc.lo
>> >   CXX      libupdater_la-io.lo
>> >   CXX      libupdater_la-net.lo
>> >   CXX      libupdater_la-pci.lo
>> > In file included from pci.cpp:17:0:
>> > pci.hpp:40:39: error: 'span' in namespace 'stdplus' does not name a template type
>> >      virtual void write(const stdplus::span<const std::uint8_t> data) = 0;
>> >                                        ^~~~
>> > pci.hpp:40:43: error: expected ',' or '...' before '<' token
>> >      virtual void write(const stdplus::span<const std::uint8_t> data) = 0;
>> >                                            ^
>> > pci.hpp:51:39: error: 'span' in namespace 'stdplus' does not name a template type
>> >      virtual void write(const stdplus::span<const std::uint8_t> data) override;
>> >                                        ^~~~
>> > pci.hpp:51:43: error: expected ',' or '...' before '<' token
>> >      virtual void write(const stdplus::span<const std::uint8_t> data) override;
>> >                                            ^
>> > pci.cpp:105:44: error: 'span' in namespace 'stdplus' does not name a template type
>> >  void PciAccessBridge::write(const stdplus::span<const std::uint8_t> data)
>> >                                             ^~~~
>> > pci.cpp:105:48: error: expected ',' or '...' before '<' token
>> >  void PciAccessBridge::write(const stdplus::span<const std::uint8_t> data)
>> >                                                 ^
>> > pci.cpp: In member function 'virtual void host_tool::PciAccessBridge::write(int)':
>> > pci.cpp:107:9: error: 'data' was not declared in this scope
>> >      if (data.size() > dataLength)
>> >          ^~~~
>> > pci.cpp:107:9: note: suggested alternatives:
>> > In file included from /usr/include/c++/7/string:51:0,
>> >                  from /usr/include/c++/7/stdexcept:39,
>> >                  from /usr/include/c++/7/system_error:41,
>> >                  from ../internal/sys.hpp:19,
>> >                  from pci.hpp:20,
>> >                  from pci.cpp:17:
>> > /usr/include/c++/7/bits/range_access.h:318:5: note:   'std::data'
>> >      data(initializer_list<_Tp> __il) noexcept
>> >      ^~~~
>> > In file included from pci.cpp:26:0:
>> > /usr/local/include/fmt/format.h:952:8: note:   'fmt::v7::detail::data'
>> >  struct data : basic_data<> {};
>> >         ^~~~
>> > pci.cpp:114:36: error: 'data' was not declared in this scope
>> >      std::memcpy(addr + dataOffset, data.data(), data.size());
>> >                                     ^~~~
>> > pci.cpp:114:36: note: suggested alternatives:
>> > In file included from /usr/include/c++/7/string:51:0,
>> >                  from /usr/include/c++/7/stdexcept:39,
>> >                  from /usr/include/c++/7/system_error:41,
>> >                  from ../internal/sys.hpp:19,
>> >                  from pci.hpp:20,
>> >                  from pci.cpp:17:
>> > /usr/include/c++/7/bits/range_access.h:318:5: note:   'std::data'
>> >      data(initializer_list<_Tp> __il) noexcept
>> >      ^~~~
>> > In file included from pci.cpp:26:0:
>> > /usr/local/include/fmt/format.h:952:8: note:   'fmt::v7::detail::data'
>> >  struct data : basic_data<> {};
>> >         ^~~~
>> > Makefile:654: recipe for target 'libupdater_la-pci.lo' failed
>> > make[3]: *** [libupdater_la-pci.lo] Error 1
>> > make[3]: Leaving directory '/home/pvoelker/bmc/host-tool/phosphor-ipmi-flash/tools'
>> > Makefile:708: recipe for target 'all-recursive' failed
>> > make[2]: *** [all-recursive] Error 1
>> > make[2]: Leaving directory '/home/pvoelker/bmc/host-tool/phosphor-ipmi-flash/tools'
>> > Makefile:608: recipe for target 'all-recursive' failed
>> > make[1]: *** [all-recursive] Error 1
>> > make[1]: Leaving directory '/home/pvoelker/bmc/host-tool/phosphor-ipmi-flash'
>> > Makefile:474: recipe for target 'all' failed
>> > make: *** [all] Error 2
>> >


More information about the openbmc mailing list