I want to be able to configure my NICs on my BMC module. The current installed openBMC image does not have any utility to do that (below is current image):
root@evb-ast2500:~# uname -aLinux evb-ast2500 6.0.10-115a0aa #1 Mon Nov 28 02:55:02 UTC 2022 armv6l GNU/Linuxroot@evb-ast2500:~# cat /etc/os-releaseID=openbmc-phosphorNAME="Phosphor OpenBMC (Phosphor OpenBMC Project Reference Distro)"VERSION="None"VERSION_ID=noneVERSION_CODENAME="${DISTRO_CODENAME}"PRETTY_NAME="Phosphor OpenBMC (Phosphor OpenBMC Project Reference Distro) None"BUILD_ID="20221206174257"OPENBMC_TARGET_MACHINE="evb-ast2500"EXTENDED_VERSION="None"
Is there a way to include phosphor-networkd when compiling the bmc code from this directory? https://github.com/openbmc/openbmc
If not, do I need to checkout the phosphor-networkd code from https://github.com/openbmc/phosphor-networkd and compile it separately? How do I include it in my bmc image?
I tried to check out the code for phosphor-networkd and followed the build steps, but it fails when doing ninja build.
meson build gives following result:
Build targets in project: 644phosphor-networkd 0.1 Subprojects function2 : YES googletest : YES nlohmann_json : YES phosphor-dbus-interfaces: YES 1 warnings phosphor-logging : YES sdbusplus : YES sdeventplus : YES stdplus : YES 6 warningsFound ninja-1.11.1 at /home/aamirrad/.local/bin/ninjaWARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated.
ninja -C build gives many many errors:
../subprojects/sdbusplus/include/sdbusplus/async/context.hpp:100:10: error: ‘stop_source’ in namespace ‘std’ does not name a type 100 | std::stop_source initial_stop{}; | ^~~~~~~~~~~../subprojects/sdbusplus/include/sdbusplus/async/context.hpp:100:36: error: extra ‘;’ [-Werror=pedantic] 100 | std::stop_source initial_stop{}; | ^ | -../subprojects/sdbusplus/include/sdbusplus/async/context.hpp:106:10: error: ‘stop_source’ in namespace ‘std’ does not name a type 106 | std::stop_source final_stop{}; | ^~~~~~~~~~~../subprojects/sdbusplus/include/sdbusplus/async/context.hpp:106:34: error: extra ‘;’ [-Werror=pedantic] 106 | std::stop_source final_stop{}; | ^ | -../subprojects/sdbusplus/include/sdbusplus/async/context.hpp: In member function ‘void sdbusplus::async::context::spawn(int&&)’:../subprojects/sdbusplus/include/sdbusplus/async/context.hpp:67:76: error: no match for call to ‘(const stdexec::__on::on_t) (stdexec::__loop::run_loop::__scheduler, std::remove_reference<int&>::type)’ 67 | std::move(execution::on(loop.get_scheduler(), std::move(sender)))); | ^../subprojects/sdbusplus/include/sdbusplus/async/context.hpp: In member function ‘bool sdbusplus::async::context::request_stop()’:../subprojects/sdbusplus/include/sdbusplus/async/context.hpp:79:16: error: ‘initial_stop’ was not declared in this scope 79 | return initial_stop.request_stop(); | ^~~~~~~~~~~~../subprojects/sdbusplus/include/sdbusplus/async/context.hpp: In member function ‘bool sdbusplus::async::context::stop_requested()’:../subprojects/sdbusplus/include/sdbusplus/async/context.hpp:83:16: error: ‘initial_stop’ was not declared in this scope 83 | return initial_stop.stop_requested();
Any help would be appreciated.
Compiled the code from bmc-networkd and it failed
If I use the following command on my bmc image that I compiled, I get an error:
busctl get-property xyz.openbmc_project.Network
/xyz/openbmc_project/network/config
xyz.openbmc_project.Network.SystemConfiguration DefaultGateway
Failed to get property DefaultGateway on interface xyz.openbmc_project.Network.SystemConfiguration: Unknown interface xyz.openbmc_project.Network.SystemConfiguration or property DefaultGateway.