Failure building burn_my_bmc

Patrick Venture venture at google.com
Thu Nov 19 11:28:34 AEDT 2020


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