phosphor-debug-collector build issues
Bills, Jason M
jason.m.bills at linux.intel.com
Wed Jan 13 04:29:04 AEDT 2021
Hi All,
Is anyone else seeing build errors in phosphor-debug-collector?
When I build in Yocto, I get this error:
| In file included from
../../../../../../workspace/sources/phosphor-debug-collector/dump_manager_main.cpp:6:
|
../../../../../../workspace/sources/phosphor-debug-collector/dump_manager_bmc.hpp:98:9:
error: 'sdbusplus::message::object_path
phosphor::dump::bmc::Manager::createDump(std::map<std::__cxx11::basic_string<char>,
std::__cxx11::basic_string<char> >)' marked 'override', but does not
override
| 98 | createDump(std::map<std::string, std::string> params)
override;
| | ^~~~~~~~~~
| In file included from
/home/jmbills/openbmc-openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-debug-collector/1.0+git999-r1/recipe-sysroot/usr/include/c++/10.2.0/memory:83,
| from
/home/jmbills/openbmc-openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-debug-collector/1.0+git999-r1/recipe-sysroot/usr/include/sdbusplus/message.hpp:11,
| from
/home/jmbills/openbmc-openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-debug-collector/1.0+git999-r1/recipe-sysroot/usr/include/sdbusplus/bus.hpp:7,
| from
/home/jmbills/openbmc-openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-debug-collector/1.0+git999-r1/recipe-sysroot/usr/include/sdbusplus/server.hpp:3,
| from
/home/jmbills/openbmc-openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-debug-collector/1.0+git999-r1/recipe-sysroot/usr/include/xyz/openbmc_project/Common/Progress/server.hpp:5,
| from
../../../../../../workspace/sources/phosphor-debug-collector/dump_entry.hpp:3,
| from
../../../../../../workspace/sources/phosphor-debug-collector/dump_manager.hpp:3,
| from
../../../../../../workspace/sources/phosphor-debug-collector/dump-extensions.hpp:1,
| from
../../../../../../workspace/sources/phosphor-debug-collector/dump_manager_main.cpp:3:
|
/home/jmbills/openbmc-openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-debug-collector/1.0+git999-r1/recipe-sysroot/usr/include/c++/10.2.0/bits/unique_ptr.h:
In instantiation of 'typename std::_MakeUniq<_Tp>::__single_object
std::make_unique(_Args&& ...) [with _Tp = phosphor::dump::bmc::Manager;
_Args = {sdbusplus::bus::bus&, std::unique_ptr<sd_event,
phosphor::dump::EventDeleter>&, const char (&)[30], const char (&)[36],
const char (&)[40]}; typename std::_MakeUniq<_Tp>::__single_object =
std::unique_ptr<phosphor::dump::bmc::Manager>]':
|
../../../../../../workspace/sources/phosphor-debug-collector/dump_manager_main.cpp:68:30:
required from here
|
/home/jmbills/openbmc-openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-debug-collector/1.0+git999-r1/recipe-sysroot/usr/include/c++/10.2.0/bits/unique_ptr.h:962:30:
error: invalid new-expression of abstract class type
'phosphor::dump::bmc::Manager'
| 962 | { return unique_ptr<_Tp>(new
_Tp(std::forward<_Args>(__args)...)); }
| |
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| In file included from
../../../../../../workspace/sources/phosphor-debug-collector/dump_manager_main.cpp:6:
|
../../../../../../workspace/sources/phosphor-debug-collector/dump_manager_bmc.hpp:48:7:
note: because the following virtual functions are pure within
'phosphor::dump::bmc::Manager':
| 48 | class Manager : virtual public CreateIface,
| | ^~~~~~~
| In file included from
../../../../../../workspace/sources/phosphor-debug-collector/dump_manager_bmc.hpp:9,
| from
../../../../../../workspace/sources/phosphor-debug-collector/dump_manager_main.cpp:6:
|
/home/jmbills/openbmc-openbmc/build/tmp/work/arm1176jzs-openbmc-linux-gnueabi/phosphor-debug-collector/1.0+git999-r1/recipe-sysroot/usr/include/xyz/openbmc_project/Dump/Create/server.hpp:55:26:
note: 'virtual uint32_t
sdbusplus::xyz::openbmc_project::Dump::server::Create::createDump()'
| 55 | virtual uint32_t createDump(
| | ^~~~~~~~~~
When I build using openbmc-build-scripts/run-unit-test-docker.sh, I get
this error:
FAILED:
libpldmresponder/1b80d8d@@pldmresponder at sha/.._oem_ibm_libpldmresponder_file_io_type_dump.cpp.o
c++ -Ilibpldmresponder/1b80d8d@@pldmresponder at sha -Ilibpldmresponder
-I../libpldmresponder -Ilibpldm -I../libpldm -I. -I.. -I../oem/ibm
-I../libpldm/requester -I/usr/local/include -fdiagnostics-color=always
-pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor
-Wextra -Wpedantic -Werror -std=c++17 -g -Wno-psabi -DOEM_IBM -fPIC -MD
-MQ
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._oem_ibm_libpldmresponder_file_io_type_dump.cpp.o'
-MF
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._oem_ibm_libpldmresponder_file_io_type_dump.cpp.o.d'
-o
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._oem_ibm_libpldmresponder_file_io_type_dump.cpp.o'
-c ../oem/ibm/libpldmresponder/file_io_type_dump.cpp
../oem/ibm/libpldmresponder/file_io_type_dump.cpp: In member function
'virtual int pldm::responder::DumpHandler::newFileAvailable(uint64_t)':
../oem/ibm/libpldmresponder/file_io_type_dump.cpp:86:60: error:
'convertForMessage' is not a member of
'sdbusplus::xyz::openbmc_project::Dump::server'
86 |
sdbusplus::xyz::openbmc_project::Dump::server::convertForMessage(
|
^~~~~~~~~~~~~~~~~
../oem/ibm/libpldmresponder/file_io_type_dump.cpp:86:60: note: suggested
alternatives:
In file included from /usr/local/include/sdbusplus/server.hpp:14,
from ../common/utils.hpp:12,
from ../oem/ibm/libpldmresponder/file_io.hpp:9,
from ../oem/ibm/libpldmresponder/file_io_by_type.hpp:3,
from ../oem/ibm/libpldmresponder/file_io_type_dump.hpp:3,
from ../oem/ibm/libpldmresponder/file_io_type_dump.cpp:1:
/usr/local/include/sdbusplus/server/bindings.hpp:21:5: note:
'sdbusplus::server::binding::details::convertForMessage'
21 | T&& convertForMessage(T&& t)
| ^~~~~~~~~~~~~~~~~
In file included from ../common/utils.hpp:13,
from ../oem/ibm/libpldmresponder/file_io.hpp:9,
from ../oem/ibm/libpldmresponder/file_io_by_type.hpp:3,
from ../oem/ibm/libpldmresponder/file_io_type_dump.hpp:3,
from ../oem/ibm/libpldmresponder/file_io_type_dump.cpp:1:
/usr/local/include/xyz/openbmc_project/Logging/Entry/server.hpp:268:20:
note:
'sdbusplus::xyz::openbmc_project::Logging::server::convertForMessage'
268 | inline std::string convertForMessage(Entry::Level e)
| ^~~~~~~~~~~~~~~~~
../oem/ibm/libpldmresponder/file_io_type_dump.cpp:87:26: error:
'sdbusplus::xyz::openbmc_project::Dump::server::NewDump::DumpType' has
not been declared
87 | NewDump::DumpType::System),
| ^~~~~~~~
[23/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._oem_ibm_libpldmresponder_platform_oem_ibm.cpp.o'
[24/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._oem_ibm_libpldmresponder_file_io_by_type.cpp.o'
[25/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/bios_integer_attribute.cpp.o'
[26/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/pdr.cpp.o'
[27/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/bios_string_attribute.cpp.o'
[28/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._oem_ibm_libpldmresponder_file_io.cpp.o'
[29/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/bios_attribute.cpp.o'
[30/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._oem_ibm_libpldmresponder_file_io_type_pel.cpp.o'
[31/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._oem_ibm_libpldmresponder_file_table.cpp.o'
[32/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/bios.cpp.o'
[33/63] Compiling C++ object
'softoff/59fd39a@@pldm-softpoweroff at exe/softoff.cpp.o'
[34/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/pdr_utils.cpp.o'
[35/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/bios_enum_attribute.cpp.o'
[36/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/fru_parser.cpp.o'
[37/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/event_parser.cpp.o'
[38/63] Compiling C++ object
'utilities/abe2c41@@set-state-effecter at exe/requester_set_state_effecter.cpp.o'
[39/63] Compiling C++ object
'utilities/abe2c41@@set-state-effecter-async at exe/requester_set_state_effecter_async.cpp.o'
[40/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._host-bmc_dbus_to_event_handler.cpp.o'
[41/63] Compiling C++ object
'pldmtool/ddccc44@@pldmtool at exe/pldm_cmd_helper.cpp.o'
[42/63] Compiling C++ object 'pldmutils at sha/common_utils.cpp.o'
[43/63] Compiling C++ object
'pldmd at exe/host-bmc_dbus_to_host_effecters.cpp.o'
[44/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/fru.cpp.o'
[45/63] Compiling C++ object 'pldmd at exe/pldmd_pldmd.cpp.o'
[46/63] Compiling C++ object 'pldmtool/ddccc44@@pldmtool at exe/pldmtool.cpp.o'
[47/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/.._host-bmc_host_pdr_handler.cpp.o'
[48/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/platform.cpp.o'
[49/63] Compiling C++ object
'pldmtool/ddccc44@@pldmtool at exe/oem_ibm_pldm_oem_ibm.cpp.o'
[50/63] Compiling C++ object
'pldmtool/ddccc44@@pldmtool at exe/pldm_fru_cmd.cpp.o'
[51/63] Compiling C++ object
'pldmtool/ddccc44@@pldmtool at exe/pldm_platform_cmd.cpp.o'
[52/63] Compiling C++ object
'pldmtool/ddccc44@@pldmtool at exe/pldm_base_cmd.cpp.o'
[53/63] Compiling C++ object
'libpldmresponder/1b80d8d@@pldmresponder at sha/bios_config.cpp.o'
[54/63] Compiling C++ object
'pldmtool/ddccc44@@pldmtool at exe/pldm_bios_cmd.cpp.o'
ninja: build stopped: subcommand failed.
The command '/bin/sh -c curl -L
https://github.com/openbmc/pldm/archive/8fc3edbc65b164eb8c90155b935c91e0e714c461.tar.gz
| tar -xz && cd pldm-* && meson build --wrap-mode=nodownload
-Dprefix=/usr/local -Dtests=disabled && ninja -C build && ninja -C build
install' returned a non-zero code: 1
++ cleanup
++ local status=1
++ [[ -n /tmp/tmp.LkIqDi6uPu ]]
++ rm -f /tmp/tmp.LkIqDi6uPu
++ trap - EXIT ERR
++ exit 1
Anyone have any ideas?
Thanks!
-Jason
More information about the openbmc
mailing list