Build Linux: FAILED devel/spike on x86_64-linux-gnu (spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1)
Joel Sherrill
joel at rtems.org
Sat May 16 17:33:38 UTC 2026
RTEMS Source Builder - Set Builder, 7 (cadcd4195781)
Host: Linux-5.14.0-611.41.1.el9_7.x86_64-x86_64-with-glibc2.34
Linux gitlab.oarcorp.com 5.14.0-611.41.1.el9_7.x86_64 #1 SMP
PREEMPT_DYNAMIC Sat Mar 21 12:28:25 UTC 2026 x86_64 x86_64
Build Time: 0:00:42.171321
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Build FAILED: spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/s_subMagsF128.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/s_subMagsF16.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/s_subMagsF32.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/s_subMagsF64.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/s_subM.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/ui32_to_f128.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/ui32_to_f16.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/ui32_to_f32.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/ui32_to_f64.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/ui64_to_f128.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/ui64_to_f16.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/ui64_to_f32.c
gcc -MMD -MP -DPREFIX=\"/home/joel/rtems-cron-7/tools/7\" -Wall -Wno-unused -Wno-nonportable-include-path -g -O2 -fPIC -g -O2 -I. -I. -I./fesvr -I./riscv -I./disasm -I./customext -I./fdt -I./softfloat -I./spike_main -I./spike_dasm -c ./softfloat/ui64_to_f64.c
sed 's/NAME/amoadd_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOADD_D/' > amoadd_d.cc
sed 's/NAME/amoadd_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOADD_W/' > amoadd_w.cc
sed 's/NAME/amoand_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOAND_D/' > amoand_d.cc
sed 's/NAME/amoand_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOAND_W/' > amoand_w.cc
sed 's/NAME/amomax_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOMAX_D/' > amomax_d.cc
sed 's/NAME/amomaxu_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOMAXU_D/' > amomaxu_d.cc
sed 's/NAME/amomaxu_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOMAXU_W/' > amomaxu_w.cc
sed 's/NAME/amomax_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOMAX_W/' > amomax_w.cc
sed 's/NAME/amomin_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOMIN_D/' > amomin_d.cc
sed 's/NAME/amominu_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOMINU_D/' > amominu_d.cc
sed 's/NAME/amominu_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOMINU_W/' > amominu_w.cc
sed 's/NAME/amomin_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOMIN_W/' > amomin_w.cc
sed 's/NAME/amoor_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOOR_D/' > amoor_d.cc
sed 's/NAME/amoor_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOOR_W/' > amoor_w.cc
sed 's/NAME/amoswap_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOSWAP_D/' > amoswap_d.cc
sed 's/NAME/amoswap_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOSWAP_W/' > amoswap_w.cc
sed 's/NAME/amoxor_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOXOR_D/' > amoxor_d.cc
sed 's/NAME/amoxor_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AMOXOR_W/' > amoxor_w.cc
sed 's/NAME/lr_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LR_D/' > lr_d.cc
sed 's/NAME/lr_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LR_W/' > lr_w.cc
sed 's/NAME/sc_d/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SC_D/' > sc_d.cc
sed 's/NAME/sc_w/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SC_W/' > sc_w.cc
sed 's/NAME/c_add/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_ADD/' > c_add.cc
sed 's/NAME/c_addi/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_ADDI/' > c_addi.cc
sed 's/NAME/c_addi4spn/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_ADDI4SPN/' > c_addi4spn.cc
sed 's/NAME/c_addw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_ADDW/' > c_addw.cc
sed 's/NAME/c_and/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_AND/' > c_and.cc
sed 's/NAME/c_andi/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_ANDI/' > c_andi.cc
sed 's/NAME/c_beqz/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_BEQZ/' > c_beqz.cc
sed 's/NAME/c_bnez/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_BNEZ/' > c_bnez.cc
sed 's/NAME/c_ebreak/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_EBREAK/' > c_ebreak.cc
sed 's/NAME/c_fld/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_FLD/' > c_fld.cc
sed 's/NAME/c_fldsp/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_FLDSP/' > c_fldsp.cc
In file included from ./fesvr/device.cc:1:
./fesvr/device.h:15:30: error: 'uint64_t' was not declared in this scope
15 | typedef std::function<void(uint64_t)> callback_t;
| ^~~~~~~~
./fesvr/device.h:9:1: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
8 | #include <functional>
+++ |+#include <cstdint>
9 |
./fesvr/device.h:15:39: error: template argument 1 is invalid
15 | typedef std::function<void(uint64_t)> callback_t;
| ^
./fesvr/device.h:16:29: error: 'uint64_t' has not been declared
16 | command_t(memif_t& memif, uint64_t tohost, callback_t cb)
| ^~~~~~~~
./fesvr/device.h:16:29: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:20:3: error: 'uint8_t' does not name a type
20 | uint8_t device() { return tohost >> 56; }
| ^~~~~~~
./fesvr/device.h:20:3: note: 'uint8_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:21:3: error: 'uint8_t' does not name a type
21 | uint8_t cmd() { return tohost >> 48; }
| ^~~~~~~
./fesvr/device.h:21:3: note: 'uint8_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:22:3: error: 'uint64_t' does not name a type
22 | uint64_t payload() { return tohost << 16 >> 16; }
| ^~~~~~~~
./fesvr/device.h:22:3: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:23:16: error: 'uint64_t' has not been declared
23 | void respond(uint64_t resp) { cb((tohost >> 48 << 48) | (resp << 16 >> 16)); }
| ^~~~~~~~
./fesvr/device.h:23:16: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:30:3: error: 'uint64_t' does not name a type
30 | uint64_t tohost;
| ^~~~~~~~
./fesvr/device.h:30:3: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h: In constructor 'command_t::command_t(memif_t&, int, callback_t)':
./fesvr/device.h:17:22: error: class 'command_t' does not have any field named 'tohost'
17 | : _memif(memif), tohost(tohost), cb(cb) {}
| ^~~~~~
sed 's/NAME/c_flw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_FLW/' > c_flw.cc
In file included from ./fesvr/rfb.h:4,
from ./fesvr/rfb.cc:1:
./fesvr/device.h:15:30: error: 'uint64_t' was not declared in this scope
15 | typedef std::function<void(uint64_t)> callback_t;
| ^~~~~~~~
./fesvr/device.h:9:1: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
8 | #include <functional>
+++ |+#include <cstdint>
9 |
./fesvr/device.h:15:39: error: template argument 1 is invalid
15 | typedef std::function<void(uint64_t)> callback_t;
| ^
./fesvr/device.h:16:29: error: 'uint64_t' has not been declared
16 | command_t(memif_t& memif, uint64_t tohost, callback_t cb)
| ^~~~~~~~
./fesvr/device.h:16:29: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:20:3: error: 'uint8_t' does not name a type
20 | uint8_t device() { return tohost >> 56; }
| ^~~~~~~
./fesvr/device.h:20:3: note: 'uint8_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:21:3: error: 'uint8_t' does not name a type
21 | uint8_t cmd() { return tohost >> 48; }
| ^~~~~~~
./fesvr/device.h:21:3: note: 'uint8_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:22:3: error: 'uint64_t' does not name a type
22 | uint64_t payload() { return tohost << 16 >> 16; }
| ^~~~~~~~
./fesvr/device.h:22:3: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:23:16: error: 'uint64_t' has not been declared
23 | void respond(uint64_t resp) { cb((tohost >> 48 << 48) | (resp << 16 >> 16)); }
| ^~~~~~~~
./fesvr/device.h:23:16: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:30:3: error: 'uint64_t' does not name a type
30 | uint64_t tohost;
| ^~~~~~~~
./fesvr/device.h:30:3: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h: In constructor 'command_t::command_t(memif_t&, int, callback_t)':
./fesvr/device.h:17:22: error: class 'command_t' does not have any field named 'tohost'
17 | : _memif(memif), tohost(tohost), cb(cb) {}
| ^~~~~~
./fesvr/device.h: In member function 'void command_t::respond(int)':
./fesvr/device.h:23:37: error: 'tohost' was not declared in this scope
23 | void respond(uint64_t resp) { cb((tohost >> 48 << 48) | (resp << 16 >> 16)); }
| ^~~~~~
./fesvr/device.h:23:77: error: expression cannot be used as a function
23 | void respond(uint64_t resp) { cb((tohost >> 48 << 48) | (resp << 16 >> 16)); }
| ^
sed 's/NAME/c_flwsp/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_FLWSP/' > c_flwsp.cc
./fesvr/device.h: In member function 'void command_t::respond(int)':
./fesvr/device.h:23:37: error: 'tohost' was not declared in this scope
23 | void respond(uint64_t resp) { cb((tohost >> 48 << 48) | (resp << 16 >> 16)); }
| ^~~~~~
./fesvr/device.h:23:77: error: expression cannot be used as a function
23 | void respond(uint64_t resp) { cb((tohost >> 48 << 48) | (resp << 16 >> 16)); }
| ^
sed 's/NAME/c_fsd/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_FSD/' > c_fsd.cc
sed 's/NAME/c_fsdsp/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_FSDSP/' > c_fsdsp.cc
sed 's/NAME/c_fsw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_FSW/' > c_fsw.cc
sed 's/NAME/c_fswsp/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_FSWSP/' > c_fswsp.cc
./fesvr/device.h: At global scope:
./fesvr/device.h:84:5: error: 'uint64_t' does not name a type
84 | uint64_t addr;
| ^~~~~~~~
./fesvr/device.h:84:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:85:5: error: 'uint64_t' does not name a type
85 | uint64_t offset;
| ^~~~~~~~
./fesvr/device.h:85:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:86:5: error: 'uint64_t' does not name a type
86 | uint64_t size;
| ^~~~~~~~
./fesvr/device.h:86:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:87:5: error: 'uint64_t' does not name a type
87 | uint64_t tag;
| ^~~~~~~~
./fesvr/device.h:87:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
sed 's/NAME/c_j/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_J/' > c_j.cc
sed 's/NAME/c_jal/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_JAL/' > c_jal.cc
sed 's/NAME/c_jalr/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_JALR/' > c_jalr.cc
sed 's/NAME/c_jr/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_JR/' > c_jr.cc
sed 's/NAME/c_li/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_LI/' > c_li.cc
./fesvr/device.h: At global scope:
./fesvr/device.h:84:5: error: 'uint64_t' does not name a type
84 | uint64_t addr;
| ^~~~~~~~
./fesvr/device.h:84:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:85:5: error: 'uint64_t' does not name a type
85 | uint64_t offset;
| ^~~~~~~~
./fesvr/device.h:85:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:86:5: error: 'uint64_t' does not name a type
86 | uint64_t size;
| ^~~~~~~~
./fesvr/device.h:86:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:87:5: error: 'uint64_t' does not name a type
87 | uint64_t tag;
| ^~~~~~~~
./fesvr/device.h:87:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
sed 's/NAME/c_lui/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_LUI/' > c_lui.cc
sed 's/NAME/c_lw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_LW/' > c_lw.cc
sed 's/NAME/c_lwsp/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_LWSP/' > c_lwsp.cc
sed 's/NAME/c_mv/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_MV/' > c_mv.cc
sed 's/NAME/c_or/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_OR/' > c_or.cc
sed 's/NAME/c_slli/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_SLLI/' > c_slli.cc
sed 's/NAME/c_srai/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_SRAI/' > c_srai.cc
sed 's/NAME/c_srli/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_SRLI/' > c_srli.cc
sed 's/NAME/c_sub/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_SUB/' > c_sub.cc
sed 's/NAME/c_subw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_SUBW/' > c_subw.cc
./fesvr/rfb.cc: In member function 'void rfb_t::handle_configure(command_t)':
./fesvr/rfb.cc:206:15: error: 'class command_t' has no member named 'payload'
206 | width = cmd.payload();
| ^~~~~~~
./fesvr/rfb.cc:207:16: error: 'class command_t' has no member named 'payload'
207 | height = cmd.payload() >> 16;
| ^~~~~~~
./fesvr/rfb.cc:209:13: error: 'class command_t' has no member named 'payload'
209 | bpp = cmd.payload() >> 32;
| ^~~~~~~
sed 's/NAME/c_sw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_SW/' > c_sw.cc
./fesvr/rfb.cc: In member function 'void rfb_t::handle_set_address(command_t)':
./fesvr/rfb.cc:225:14: error: 'class command_t' has no member named 'payload'
225 | addr = cmd.payload();
| ^~~~~~~
sed 's/NAME/c_swsp/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_SWSP/' > c_swsp.cc
In file included from ./fesvr/syscall.h:6,
from ./fesvr/syscall.cc:3:
./fesvr/device.h:15:30: error: 'uint64_t' was not declared in this scope
15 | typedef std::function<void(uint64_t)> callback_t;
| ^~~~~~~~
./fesvr/device.h:9:1: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
8 | #include <functional>
+++ |+#include <cstdint>
9 |
./fesvr/device.h:15:39: error: template argument 1 is invalid
15 | typedef std::function<void(uint64_t)> callback_t;
| ^
./fesvr/device.h:16:29: error: 'uint64_t' has not been declared
16 | command_t(memif_t& memif, uint64_t tohost, callback_t cb)
| ^~~~~~~~
./fesvr/device.h:16:29: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:20:3: error: 'uint8_t' does not name a type
20 | uint8_t device() { return tohost >> 56; }
| ^~~~~~~
./fesvr/device.h:20:3: note: 'uint8_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:21:3: error: 'uint8_t' does not name a type
21 | uint8_t cmd() { return tohost >> 48; }
sed 's/NAME/c_xor/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_C_XOR/' > c_xor.cc
| ^~~~~~~
./fesvr/device.h:21:3: note: 'uint8_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:22:3: error: 'uint64_t' does not name a type
22 | uint64_t payload() { return tohost << 16 >> 16; }
| ^~~~~~~~
./fesvr/device.h:22:3: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:23:16: error: 'uint64_t' has not been declared
23 | void respond(uint64_t resp) { cb((tohost >> 48 << 48) | (resp << 16 >> 16)); }
| ^~~~~~~~
./fesvr/device.h:23:16: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:30:3: error: 'uint64_t' does not name a type
30 | uint64_t tohost;
| ^~~~~~~~
./fesvr/device.h:30:3: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h: In constructor 'command_t::command_t(memif_t&, int, callback_t)':
./fesvr/device.h:17:22: error: class 'command_t' does not have any field named 'tohost'
17 | : _memif(memif), tohost(tohost), cb(cb) {}
| ^~~~~~
sed 's/NAME/add/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_ADD/' > add.cc
./fesvr/device.h: In member function 'void command_t::respond(int)':
./fesvr/device.h:23:37: error: 'tohost' was not declared in this scope
23 | void respond(uint64_t resp) { cb((tohost >> 48 << 48) | (resp << 16 >> 16)); }
| ^~~~~~
./fesvr/device.h:23:77: error: expression cannot be used as a function
23 | void respond(uint64_t resp) { cb((tohost >> 48 << 48) | (resp << 16 >> 16)); }
| ^
sed 's/NAME/addi/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_ADDI/' > addi.cc
sed 's/NAME/addiw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_ADDIW/' > addiw.cc
sed 's/NAME/addw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_ADDW/' > addw.cc
sed 's/NAME/and/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AND/' > and.cc
sed 's/NAME/andi/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_ANDI/' > andi.cc
sed 's/NAME/auipc/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_AUIPC/' > auipc.cc
sed 's/NAME/beq/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_BEQ/' > beq.cc
sed 's/NAME/bge/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_BGE/' > bge.cc
sed 's/NAME/bgeu/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_BGEU/' > bgeu.cc
sed 's/NAME/blt/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_BLT/' > blt.cc
sed 's/NAME/bltu/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_BLTU/' > bltu.cc
sed 's/NAME/bne/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_BNE/' > bne.cc
./fesvr/device.h: At global scope:
./fesvr/device.h:84:5: error: 'uint64_t' does not name a type
84 | uint64_t addr;
| ^~~~~~~~
./fesvr/device.h:84:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:85:5: error: 'uint64_t' does not name a type
85 | uint64_t offset;
| ^~~~~~~~
./fesvr/device.h:85:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:86:5: error: 'uint64_t' does not name a type
86 | uint64_t size;
| ^~~~~~~~
./fesvr/device.h:86:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
./fesvr/device.h:87:5: error: 'uint64_t' does not name a type
87 | uint64_t tag;
| ^~~~~~~~
./fesvr/device.h:87:5: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
sed 's/NAME/jal/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_JAL/' > jal.cc
sed 's/NAME/jalr/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_JALR/' > jalr.cc
sed 's/NAME/lb/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LB/' > lb.cc
sed 's/NAME/lbu/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LBU/' > lbu.cc
sed 's/NAME/ld/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LD/' > ld.cc
sed 's/NAME/lh/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LH/' > lh.cc
sed 's/NAME/lhu/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LHU/' > lhu.cc
sed 's/NAME/lui/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LUI/' > lui.cc
sed 's/NAME/lw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LW/' > lw.cc
sed 's/NAME/lwu/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_LWU/' > lwu.cc
sed 's/NAME/or/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_OR/' > or.cc
sed 's/NAME/ori/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_ORI/' > ori.cc
sed 's/NAME/sb/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SB/' > sb.cc
sed 's/NAME/sd/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SD/' > sd.cc
sed 's/NAME/sh/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SH/' > sh.cc
sed 's/NAME/sll/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SLL/' > sll.cc
sed 's/NAME/slli/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SLLI/' > slli.cc
sed 's/NAME/slliw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SLLIW/' > slliw.cc
sed 's/NAME/sllw/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SLLW/' > sllw.cc
sed 's/NAME/slt/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SLT/' > slt.cc
sed 's/NAME/slti/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SLTI/' > slti.cc
sed 's/NAME/sltiu/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SLTIU/' > sltiu.cc
At global scope:
cc1plus: note: unrecognized command-line option '-Wno-nonportable-include-path' may have been intended to silence earlier diagnostics
sed 's/NAME/sltu/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SLTU/' > sltu.cc
sed 's/NAME/sra/' ./riscv/insn_template.cc | sed 's/OPCODE/ MATCH_SRA/' > sra.cc
make: *** [Makefile:349: rfb.o] Error 1
make: *** Waiting for unfinished jobs....
./fesvr/device.cc: In member function 'void device_t::handle_command(command_t)':
./fesvr/device.cc:33:24: error: 'class command_t' has no member named 'cmd'
33 | command_handlers[cmd.cmd()](cmd);
| ^~~
./fesvr/device.cc: In member function 'void device_t::handle_identify(command_t)':
./fesvr/device.cc:42:21: error: 'class command_t' has no member named 'payload'
42 | size_t what = cmd.payload() % command_t::MAX_COMMANDS;
| ^~~~~~~
./fesvr/device.cc:43:23: error: 'class command_t' has no member named 'payload'
43 | uint64_t addr = cmd.payload() / command_t::MAX_COMMANDS;
| ^~~~~~~
./fesvr/device.cc: In member function 'void bcd_t::handle_write(command_t)':
./fesvr/device.cc:72:35: error: 'class command_t' has no member named 'payload'
72 | canonical_terminal_t::write(cmd.payload());
| ^~~~~~~
./fesvr/device.cc: In member function 'void disk_t::handle_read(command_t)':
./fesvr/device.cc:110:24: error: 'class command_t' has no member named 'payload'
110 | cmd.memif().read(cmd.payload(), sizeof(req), &req);
| ^~~~~~~
./fesvr/device.cc:112:32: error: 'struct disk_t::request_t' has no member named 'size'
112 | std::vector<uint8_t> buf(req.size);
| ^~~~
./fesvr/device.cc:113:55: error: 'struct disk_t::request_t' has no member named 'offset'
113 | if ((size_t)::pread(fd, buf.data(), buf.size(), req.offset) != req.size)
| ^~~~~~
./fesvr/device.cc:113:70: error: 'struct disk_t::request_t' has no member named 'size'
113 | if ((size_t)::pread(fd, buf.data(), buf.size(), req.offset) != req.size)
| ^~~~
./fesvr/device.cc:114:82: error: 'struct disk_t::request_t' has no member named 'offset'
114 | throw std::runtime_error("could not read " + id + " @ " + std::to_string(req.offset));
| ^~~~~~
./fesvr/device.cc:116:25: error: 'struct disk_t::request_t' has no member named 'addr'
116 | cmd.memif().write(req.addr, buf.size(), buf.data());
| ^~~~
./fesvr/device.cc:117:19: error: 'struct disk_t::request_t' has no member named 'tag'
117 | cmd.respond(req.tag);
| ^~~
./fesvr/device.cc: In member function 'void disk_t::handle_write(command_t)':
./fesvr/device.cc:123:24: error: 'class command_t' has no member named 'payload'
123 | cmd.memif().read(cmd.payload(), sizeof(req), &req);
| ^~~~~~~
./fesvr/device.cc:125:32: error: 'struct disk_t::request_t' has no member named 'size'
125 | std::vector<uint8_t> buf(req.size);
| ^~~~
./fesvr/device.cc:126:24: error: 'struct disk_t::request_t' has no member named 'addr'
126 | cmd.memif().read(req.addr, buf.size(), buf.data());
| ^~~~
./fesvr/device.cc:128:56: error: 'struct disk_t::request_t' has no member named 'offset'
128 | if ((size_t)::pwrite(fd, buf.data(), buf.size(), req.offset) != req.size)
| ^~~~~~
./fesvr/device.cc:128:71: error: 'struct disk_t::request_t' has no member named 'size'
128 | if ((size_t)::pwrite(fd, buf.data(), buf.size(), req.offset) != req.size)
| ^~~~
./fesvr/device.cc:129:83: error: 'struct disk_t::request_t' has no member named 'offset'
129 | throw std::runtime_error("could not write " + id + " @ " + std::to_string(req.offset));
| ^~~~~~
./fesvr/device.cc:131:19: error: 'struct disk_t::request_t' has no member named 'tag'
131 | cmd.respond(req.tag);
| ^~~
./fesvr/device.cc: In member function 'void device_list_t::handle_command(command_t)':
./fesvr/device.cc:148:15: error: 'class command_t' has no member named 'device'
148 | devices[cmd.device()]->handle_command(cmd);
| ^~~~~~
./fesvr/syscall.cc: In member function 'void syscall_t::handle_syscall(command_t)':
./fesvr/syscall.cc:196:11: error: 'class command_t' has no member named 'payload'
196 | if (cmd.payload() & 1) // test pass/fail
| ^~~~~~~
./fesvr/syscall.cc:198:26: error: 'class command_t' has no member named 'payload'
198 | htif->exitcode = cmd.payload();
| ^~~~~~~
./fesvr/syscall.cc:204:18: error: 'class command_t' has no member named 'payload'
204 | dispatch(cmd.payload());
| ^~~~~~~
At global scope:
cc1plus: note: unrecognized command-line option '-Wno-nonportable-include-path' may have been intended to silence earlier diagnostics
make: *** [Makefile:349: device.o] Error 1
At global scope:
cc1plus: note: unrecognized command-line option '-Wno-nonportable-include-path' may have been intended to silence earlier diagnostics
make: *** [Makefile:349: syscall.o] Error 1
shell cmd failed: /bin/sh -ex /home/joel/rtems-cron-7/rtems-source-builder/bare/build/spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1/do-build
error: building spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1
See error report: rsb-report-spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1.txt
Note: In some cases the error appears only in
the complete build log (see --log option)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Output
======
Build Set: devel/spike
Build Set: devel/dtc.bset
config: devel/dtc-1.7.2-1.cfg
package: dtc-1.7.2-x86_64-linux-gnu-1
building: dtc-1.7.2-x86_64-linux-gnu-1
sizes: dtc-1.7.2-x86_64-linux-gnu-1: 4.401MB (installed: 1.148MB)
cleaning: dtc-1.7.2-x86_64-linux-gnu-1
reporting: devel/dtc-1.7.2-1.cfg -> dtc-1.7.2-x86_64-linux-gnu-1.txt
reporting: devel/dtc-1.7.2-1.cfg -> dtc-1.7.2-x86_64-linux-gnu-1.xml
staging: dtc-1.7.2-x86_64-linux-gnu-1 -> /home/joel/rtems-cron-7/rtems-source-builder/bare/build/tmp/sb-1003-staging
cleaning: dtc-1.7.2-x86_64-linux-gnu-1
Build Set: Time 0:00:23.888984
config: devel/spike-1.1.0.cfg
package: spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1
download: https://dl.rtems.org/0fef57ba0470ad927cba7763c77c770882ebe1549d79a36c4d351961e10d14f672e8c1bb4e2400639ba6694affa0eafabd60aaed88c586ac233c8f9f7227aa63/spike-530af85d83781a3dae31a4ace84a573ec255fefa.tar.gz -> sources/spike-530af85d83781a3dae31a4ace84a573ec255fefa.tar.gz
building: spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1
error: building spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1
Build FAILED
See error report: rsb-report-spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1.txt
Note: In some cases the error appears only in
the complete build log (see --log option)
error: building spike-530af85d83781a3dae31a4ace84a573ec255fefa-x86_64-linux-gnu-1
Mailing report: build at rtems.org
Report
======
==============================================================================
RTEMS Tools Project <users at rtems.org> Sat May 16 12:33:14 2026
==============================================================================
Report: devel/dtc-1.7.2-1.cfg
------------------------------------------------------------------------------
RTEMS Source Builder Repository Status
Remotes:
[ remotes removed, contact sender for details ]
Status:
Clean
Head:
Commit: cadcd4195781ea8c5713d4a36e2e67ab681d4906
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Build Set: (1) devel/dtc-1.7.2-1.cfg
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Build Set: (2) devel/dtc-1.7.2-1.cfg
------------------------------------------------------------------------------
Package: dtc-1.7.2-x86_64-linux-gnu-1
Config: devel/dtc-1.7.2-1.cfg
Summary:
Device Tree Compiler v1.7.2 for target on host x86_64-linux-gnu
URL:
https://www.devicetree.org/
Version:
1.7.2
Release:
1
Sources: 1
1: https://www.kernel.org/pub/software/utils/dtc/dtc-1.7.2.tar.xz
sha512: MPNhEXWlwpVWKC8/KJRwGlg364aWCNideMKAr0SLvDpbbIP1HCj5kYR8DrfEKqV1mbvDFDPxs7LI0WLLIWm5Hw==
Patches: 0
Preparation:
build_top=$(pwd)
%setup source dtc -q -n dtc-1.7.2
%setup patch dtc -p1
cd ${build_top}
Build:
build_top=$(pwd)
cd dtc-1.7.2
# Build and build flags means force build == host
# gcc is not ready to be compiled with -std=gnu99
LDFLAGS="${SB_HOST_LDFLAGS}"
LIBS="${SB_HOST_LIBS}"
CC=$(echo "gcc ${SB_CFLAGS}" | sed -e 's,-std=gnu99 ,,')
CXX=$(echo "g++ ${SB_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,')
CC_FOR_BUILD=${CC}
CXX_FOR_BUILD=${CXX}
export CC CXX CC_FOR_BUILD CXX_FOR_BUILD CFLAGS LDFLAGS LIBS
make PREFIX=/home/joel/rtems-cron-7/tools/7 WARNINGS=
cd ${build_top}
Install:
build_top=$(pwd)
rm -rf $SB_BUILD_ROOT
cd dtc-1.7.2
make DESTDIR=$SB_BUILD_ROOT PREFIX=/home/joel/rtems-cron-7/tools/7 WARNINGS= install
cd ${build_top}
==============================================================================
RTEMS Tools Project <users at rtems.org> Sat May 16 12:33:14 2026
==============================================================================
Report: devel/dtc-1.7.2-1.cfg
------------------------------------------------------------------------------
RTEMS Source Builder Repository Status
Remotes:
[ remotes removed, contact sender for details ]
Status:
Clean
Head:
Commit: cadcd4195781ea8c5713d4a36e2e67ab681d4906
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Build Set: (1) devel/dtc-1.7.2-1.cfg
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Build Set: (2) devel/dtc-1.7.2-1.cfg
------------------------------------------------------------------------------
Package: dtc-1.7.2-x86_64-linux-gnu-1
Config: devel/dtc-1.7.2-1.cfg
Summary:
Device Tree Compiler v1.7.2 for target on host x86_64-linux-gnu
URL:
https://www.devicetree.org/
Version:
1.7.2
Release:
1
Sources: 1
1: https://www.kernel.org/pub/software/utils/dtc/dtc-1.7.2.tar.xz
sha512: MPNhEXWlwpVWKC8/KJRwGlg364aWCNideMKAr0SLvDpbbIP1HCj5kYR8DrfEKqV1mbvDFDPxs7LI0WLLIWm5Hw==
Patches: 0
Preparation:
build_top=$(pwd)
%setup source dtc -q -n dtc-1.7.2
%setup patch dtc -p1
cd ${build_top}
Build:
build_top=$(pwd)
cd dtc-1.7.2
# Build and build flags means force build == host
# gcc is not ready to be compiled with -std=gnu99
LDFLAGS="${SB_HOST_LDFLAGS}"
LIBS="${SB_HOST_LIBS}"
CC=$(echo "gcc ${SB_CFLAGS}" | sed -e 's,-std=gnu99 ,,')
CXX=$(echo "g++ ${SB_CXXFLAGS}" | sed -e 's,-std=gnu99 ,,')
CC_FOR_BUILD=${CC}
CXX_FOR_BUILD=${CXX}
export CC CXX CC_FOR_BUILD CXX_FOR_BUILD CFLAGS LDFLAGS LIBS
make PREFIX=/home/joel/rtems-cron-7/tools/7 WARNINGS=
cd ${build_top}
Install:
build_top=$(pwd)
rm -rf $SB_BUILD_ROOT
cd dtc-1.7.2
make DESTDIR=$SB_BUILD_ROOT PREFIX=/home/joel/rtems-cron-7/tools/7 WARNINGS= install
cd ${build_top}
More information about the build
mailing list