8000 Cannot build gcc 14 · Issue #53 · openbmc/pldm · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Cannot build gcc 14 #53
Open
Open
@ian-hillsidetec

Description

@ian-hillsidetec

openbmc/libpldm#20

I now have this Dockerfile:

FROM rockylinux:9

RUN dnf install -y epel-release && \
    dnf config-manager --set-enabled crb && \
    dnf groupinstall -y "Development Tools" && \
    dnf install -y \
        python3 python3-pip python3-devel git \
        gcc-toolset-14 gcc-toolset-14-gcc-c++ \
        kernel-headers kernel-devel \
        make cmake systemd-devel dbus-devel \
        libyaml-devel json-c-devel i2c-tools \
        pkgconf-pkg-config && \
    dnf clean all

# Enable gcc-toolset-14 environment
SHELL ["/bin/bash", "-c"]
RUN source /opt/rh/gcc-toolset-14/enable && gcc --version

ENV PKG_CONFIG_PATH=/usr/lib64/pkgconfig:/usr/share/pkgconfig

RUN python3 -m pip install --upgrade pip && \
    python3 -m pip install meson ninja inflection pyyaml mako jsonschema

WORKDIR /root

RUN dnf install -y pkgconf-pkg-config
ENV PKG_CONFIG_PATH=/usr/lib64/pkgconfig:/usr/share/pkgconfig

# Get MCTP headers
RUN git clone --depth=1 https://github.com/openbmc/linux.git /root/openbmc-linux && \
    mkdir -p /usr/local/include/linux && \
    cp /root/openbmc-linux/include/uapi/linux/mctp.h /usr/local/include/linux/

RUN git clone https://github.com/openbmc/pldm.git && \
    cd pldm && \
    python3 -c "import shutil; print('Python:', shutil.which('python3'))" && \
    python3 --version && \
    python3 -m pip list && \
    python3 -c "import shutil; print('Meson from pythong command:', shutil.which('meson'))" && \
    echo "CLI Python 3: " && command -v python3 && \
    echo "CLI meson: " && command -v meson && \
    scl enable gcc-toolset-14 -- meson setup build && \
    scl enable gcc-toolset-14 -- ninja -C build && \
    scl enable gcc-toolset-14 -- ninja -C build install

RUN ldconfig

CMD ["/bin/bash"]

And I ge this error which I think is in libpldm:

78.99 [1082/1223] Compiling C++ object pldmd.p/pldmd_pldmd.cpp.o
78.99 FAILED: pldmd.p/pldmd_pldmd.cpp.o 
78.99 c++ -Ipldmd.p -I. -I.. -Isubprojects/phosphor-dbus-interfaces/gen -I../subprojects/phosphor-dbus-interfaces/gen -I../subprojects/sdbusplus/include -Isubprojects/phosphor-logging/lib/include -I../subprojects/phosphor-logging/lib/include -Isubprojects/sdeventplus/src -I../subprojects/sdeventplus/src -Isubprojects/stdplus/include -I../subprojects/stdplus/include -Isubprojects/stdplus/include-fd -I../subprojects/stdplus/include-fd -I../subprojects/fmt/include -Isubprojects/fmt -I../subprojects/fmt -I../subprojects/function2/include -Isubprojects/function2 -I../subprojects/function2 -Ilibpldmresponder -I../libpldmresponder -Ioem/ibm -I../oem/ibm -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Wpedantic -Werror -std=c++23 -O2 -g -Wno-psabi -DLIBPLDMRESPONDER -DOEM_IBM -include /root/pldm/build/config.h -DOEM_AMPERE -pthread -DBOOST_ASIO_DISABLE_THREADS -DBOOST_ALL_NO_LIB -DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_COROUTINES_NO_DEPRECATION_WARNING -isystem../subprojects/libcper/include -isystemsubprojects/libcper/include -isystem../subprojects/nlohmann_json/single_include -isystem../subprojects/libpldm/include -isystemsubprojects/libpldm/include -MD -MQ pldmd.p/pldmd_pldmd.cpp.o -MF pldmd.p/pldmd_pldmd.cpp.o.d -o pldmd.p/pldmd_pldmd.cpp.o -c ../pldmd/pldmd.cpp
78.99 In file included from ../subprojects/sdeventplus/src/sdeventplus/source/event.hpp:5,
78.99                  from ../requester/handler.hpp:15,
78.99                  from ../fw-update/device_updater.hpp:4,
78.99                  from ../fw-update/manager.hpp:6,
78.99                  from ../pldmd/pldmd.cpp:6:
78.99 ../subprojects/function2/include/function2/function2.hpp: In instantiation of 'constexpr fu2::abi_400::detail::type_erasure::erasure<IsOwning, Config, Property>::erasure(std::true_type, T&&, Allocator&&) [with T = main(int, char**)::<lambda(sdeventplus::source::Signal&, const signalfd_siginfo*)>; Allocator = std::allocator<main(int, char**)::<lambda(sdeventplus::source::Signal&, const signalfd_siginfo*)> >; bool IsOwning = true; Config = fu2::abi_400::detail::config<true, false, fu2::capacity_default>; Property = fu2::abi_400::detail::property<true, false, void(sdeventplus::source::Signal&, const signalfd_siginfo*)>; std::true_type = std::true_type]':
78.99 ../subprojects/function2/include/function2/function2.hpp:1591:9:   required from 'constexpr fu2::abi_400::detail::function<Config, fu2::abi_400::detail::property<IsThrowing, HasStrongExceptGuarantee, Args ...> >::function(T&&) [with T = main(int, char**)::<lambda(sdeventplus::source::Signal&, const signalfd_siginfo*)>; enable_if_not_convertible_to_this<T>* <anonymous> = 0; enable_if_can_accept_all_t<T>* <anonymous> = 0; assert_wrong_copy_assign_t<T>* <anonymous> = 0; assert_no_strong_except_guarantee_t<T>* <anonymous> = 0; Config = fu2::abi_400::detail::config<true, false, fu2::capacity_default>; bool IsThrowing = true; bool HasStrongExceptGuarantee = false; Args = {void(sdeventplus::source::Signal&, const signalfd_siginfo*)}]'
78.99  1591 |       : erasure_(use_bool_op<unrefcv_t<T>>{}, std::forward<T>(callable)) {
78.99       |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
78.99 ../pldmd/pldmd.cpp:450:10:   required from here
78.99   450 |         });
78.99       |          ^
78.99 ../subprojects/function2/include/function2/function2.hpp:1186:10: error: the address of 'static constexpr void main(int, char**)::<lambda(sdeventplus::source::Signal&, const signalfd_siginfo*)>::_FUN(sdeventplus::source::Signal&, const signalfd_siginfo*)' will never be NULL [-Werror=address]
78.99  1186 |     if (!!callable) {
78.99       |          ^~~~~~~~~
78.99 ../pldmd/pldmd.cpp:448:9: note: 'static constexpr void main(int, char**)::<lambda(sdeventplus::source::Signal&, const signalfd_siginfo*)>::_FUN(sdeventplus::source::Signal&, const signalfd_siginfo*)' declared here
78.99   448 |         [](Signal& signal, const struct signalfd_siginfo* info) {
78.99       |         ^
78.99 cc1plus: all warnings being treated as errors
79.18 [1083/1223] Compiling C++ object pldmtool/pldmtool.p/pldmtool.cpp.o
79.54 [1084/1223] Compiling C++ object libpldmresponder/libpldmresponder.so.0.1.p/platform.cpp.o
79.65 [1085/1223] Compiling C++ object pldmtool/pldmtool.p/pldm_fru_cmd.cpp.o
79.83 [1086/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._dbus_impl_fru.cpp.o
79.96 [1087/1223] Compiling C++ object host-bmc/test/custom_dbus_test.p/.._dbus_custom_dbus.cpp.o
80.30 [1088/1223] Compiling C++ object requester/test/request_test.p/request_test.cpp.o
80.46 [1089/1223] Compiling C++ object pldmd.p/platform-mc_dbus_to_terminus_effecters.cpp.o
80.60 [1090/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/.._manager.cpp.o
81.04 [1091/1223] Compiling C++ object host-bmc/test/custom_dbus_test.p/.._utils.cpp.o
81.07 [1092/1223] Compiling C++ object libpldmresponder/test/libpldmresponder_platform_test.p/libpldmresponder_platform_test.cpp.o
81.12 [1093/1223] Compiling C++ object platform-mc/test/sensor_manager_test.p/.._dbus_impl_fru.cpp.o
81.13 [1094/1223] Compiling C++ object pldmtool/pldmtool.p/pldm_base_cmd.cpp.o
81.50 [1095/1223] Compiling C++ object platform-mc/test/terminus_test.p/.._manager.cpp.o
81.65 [1096/1223] Compiling C++ object pldmtool/pldmtool.p/pldm_bios_cmd.cpp.o
82.14 [1097/1223] Compiling C++ object common/test/pldm_utils_test.p/.._utils.cpp.o
82.36 [1098/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/.._platform_manager.cpp.o
82.52 [1099/1223] Compiling C++ object platform-mc/test/terminus_test.p/terminus_test.cpp.o
82.64 [1100/1223] Compiling C++ object requester/test/handler_test.p/.._mctp_endpoint_discovery.cpp.o
83.38 [1101/1223] Compiling C++ object requester/test/mctp_endpoint_discovery_test.p/.._mctp_endpoint_discovery.cpp.o
83.42 [1102/1223] Compiling C++ object requester/test/request_test.p/.._mctp_endpoint_discovery.cpp.o
83.45 [1103/1223] Compiling C++ object fw-update/test/inventory_manager_test.p/.._.._common_utils.cpp.o
83.49 [1104/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/.._sensor_manager.cpp.o
83.97 [1105/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/.._event_manager.cpp.o
84.30 [1106/1223] Compiling C++ object fw-update/test/package_parser_test.p/.._.._common_utils.cpp.o
84.37 [1107/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/.._numeric_sensor.cpp.o
84.68 [1108/1223] Compiling C++ object platform-mc/test/terminus_test.p/.._platform_manager.cpp.o
84.76 [1109/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._manager.cpp.o
84.95 [1110/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/.._terminus.cpp.o
84.95 [1111/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/.._.._requester_mctp_endpoint_discovery.cpp.o
84.97 [1112/1223] Compiling C++ object host-bmc/test/utils_test.p/.._.._common_utils.cpp.o
84.98 [1113/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._platform_manager.cpp.o
85.56 [1114/1223] Compiling C++ object platform-mc/test/terminus_test.p/.._sensor_manager.cpp.o
85.57 [1115/1223] Compiling C++ object platform-mc/test/sensor_manager_test.p/.._manager.cpp.o
85.77 [1116/1223] Compiling C++ object platform-mc/test/terminus_test.p/.._numeric_sensor.cpp.o
85.83 [1117/1223] Compiling C++ object platform-mc/test/terminus_test.p/.._.._requester_mctp_endpoint_discovery.cpp.o
86.04 [1118/1223] Compiling C++ object pldmtool/pldmtool.p/pldm_fw_update_cmd.cpp.o
86.11 [1119/1223] Compiling C++ object fw-update/test/device_updater_test.p/.._.._common_utils.cpp.o
86.17 [1120/1223] Compiling C++ object platform-mc/test/terminus_test.p/.._event_manager.cpp.o
86.27 [1121/1223] Compiling C++ object pldmtool/pldmtool.p/pldm_platform_cmd.cpp.o
86.62 [1122/1223] Compiling C++ object platform-mc/test/sensor_manager_test.p/.._platform_manager.cpp.o
86.72 [1123/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._.._requester_mctp_endpoint_discovery.cpp.o
86.85 [1124/1223] Compiling C++ object platform-mc/test/terminus_test.p/.._terminus.cpp.o
86.89 [1125/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._event_manager.cpp.o
87.02 [1126/1223] Compiling C++ object requester/test/handler_test.p/handler_test.cpp.o
87.12 [1127/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/terminus_manager_test.cpp.o
87.33 [1128/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._numeric_sensor.cpp.o
87.35 [1129/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._sensor_manager.cpp.o
88.02 [1130/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._terminus.cpp.o
88.02 [1131/1223] Compiling C++ object requester/test/mctp_endpoint_discovery_test.p/mctp_endpoint_discovery_test.cpp.o
88.21 [1132/1223] Compiling C++ object host-bmc/test/custom_dbus_test.p/.._.._common_utils.cpp.o
88.38 [1133/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/platform_manager_test.cpp.o
88.40 [1134/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/.._terminus_manager.cpp.o
88.76 [1135/1223] Compiling C++ object platform-mc/test/sensor_manager_test.p/.._terminus.cpp.o
88.93 [1136/1223] Compiling C++ object platform-mc/test/sensor_manager_test.p/.._sensor_manager.cpp.o
89.18 [1137/1223] Compiling C++ object platform-mc/test/sensor_manager_test.p/.._numeric_sensor.cpp.o
89.46 [1138/1223] Compiling C++ object platform-mc/test/sensor_manager_test.p/sensor_manager_test.cpp.o
89.61 [1139/1223] Compiling C++ object requester/test/handler_test.p/.._.._common_utils.cpp.o
90.08 [1140/1223] Compiling C++ object requester/test/mctp_endpoint_discovery_test.p/.._.._common_utils.cpp.o
90.15 [1141/1223] Compiling C++ object platform-mc/test/terminus_test.p/.._terminus_manager.cpp.o
90.17 [1142/1223] Compiling C++ object requester/test/request_test.p/.._.._common_utils.cpp.o
91.05 [1143/1223] Compiling C++ object platform-mc/test/terminus_manager_test.p/.._dbus_to_terminus_effecters.cpp.o
91.61 [1144/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._terminus_manager.cpp.o
92.48 [1145/1223] Compiling C++ object platform-mc/test/sensor_manager_test.p/.._terminus_manager.cpp.o
92.61 [1146/1223] Compiling C++ object platform-mc/test/terminus_test.p/.._dbus_to_terminus_effecters.cpp.o
93.55 [1147/1223] Compiling C++ object platform-mc/test/platform_manager_test.p/.._dbus_to_terminus_effecters.cpp.o
93.55 ninja: build stopped: subcommand failed.
------
Dockerfile:34
--------------------
  33 |     
  34 | >>> RUN git clone https://github.com/openbmc/pldm.git && \
  35 | >>>     cd pldm && \
  36 | >>>     python3 -c "import shutil; print('Python:', shutil.which('python3'))" && \
  37 | >>>     python3 --version && \
  38 | >>>     python3 -m pip list && \
  39 | >>>     python3 -c "import shutil; print('Meson from pythong command:', shutil.which('meson'))" && \
  40 | >>>     echo "CLI Python 3: " && command -v python3 && \
  41 | >>>     echo "CLI meson: " && command -v meson && \
  42 | >>>     scl enable gcc-toolset-14 -- meson setup build && \
  43 | >>>     scl enable gcc-toolset-14 -- ninja -C build && \
  44 | >>>     scl enable gcc-toolset-14 -- ninja -C build install
  45 |     
--------------------
ERROR: failed to solve: process "/bin/bash -c git clone https://github.com/openbmc/pldm.git &&     cd pldm &&     python3 -c \"import shutil; print('Python:', shutil.which('python3'))\" &&     python3 --version &&     python3 -m pip list &&     python3 -c \"import shutil; print('Meson from pythong command:', shutil.which('meson'))\" &&     echo \"CLI Python 3: \" && command -v python3 &&     echo \"CLI meson: \" && command -v meson &&     scl enable gcc-toolset-14 -- meson setup build &&     scl enable gcc-toolset-14 -- ninja -C build &&     scl enable gcc-toolset-14 -- ninja -C build install" did not complete successfully: exit code: 1
[ian@nyc-dev3 test_satellite]$ vim Dockerfile 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0