Page 1 of 1

T5 程序从3.12.12迁移至3.12.16后编译出错,应该怎样解决

Posted: 2025年 Aug 18日 16:49
by Memory

部分log如下,完整log放在了附件

Code: Select all

/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:77:3: error: conflicting types for 'SAVED_CONTEXT'
   77 | } SAVED_CONTEXT;
      |   ^~~~~~~~~~~~~
In file included from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:13:
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/cm33/include/stack_base.h:47:3: note: previous declaration of 'SAVED_CONTEXT' was here
   47 | } SAVED_CONTEXT;
      |   ^~~~~~~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c: In function 'trap_handler':
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:176:25: warning: implicit declaration of function 'read_csr' [-Wimplicit-function-declaration]
  176 |   uint32_t mie_status = read_csr(NDS_UIE);
      |                         ^~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:176:34: error: 'NDS_UIE' undeclared (first use in this function)
  176 |   uint32_t mie_status = read_csr(NDS_UIE);
      |                                  ^~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:176:34: note: each undeclared identifier is reported only once for each function it appears in
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:177:3: warning: implicit declaration of function 'clear_csr'; did you mean 'clearerr'? [-Wimplicit-function-declaration]
  177 |   clear_csr(NDS_UIE, mie_status);
      |   ^~~~~~~~~
      |   clearerr
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:188:3: warning: implicit declaration of function 'set_csr' [-Wimplicit-function-declaration]
  188 |   set_csr(NDS_UIE, mie_status);
      |   ^~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c: In function 'arch_dump_cpu_registers':
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:248:16: error: 'TRAP_M_USER_ASSERT' undeclared (first use in this function)
  248 |  if (mcause == TRAP_M_USER_ASSERT) {
      |                ^~~~~~~~~~~~~~~~~~
In file included from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/common/bk_generic.h:23,
                 from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/common/bk_include.h:23,
                 from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/os/os.h:17,
                 from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/components/log.h:21,
                 from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/soc/soc.h:23,
                 from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/driver/reset_reason/reset_reason.h:22,
                 from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:10:
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:256:48: error: 'NDS_UTVEC' undeclared (first use in this function)
  256 |  BK_DUMP_OUT("838 utvec x 0x%lx\r\n", read_csr(NDS_UTVEC));
      |                                                ^~~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/common/bk_assert.h:44:78: note: in definition of macro 'BK_DUMP_OUT'
   44 | #define BK_DUMP_OUT(format, ... )           shell_assert_out(true, format, ##__VA_ARGS__)
      |                                                                              ^~~~~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:257:51: error: 'NDS_USCRATCH' undeclared (first use in this function)
  257 |  BK_DUMP_OUT("897 uscratch x 0x%lx\r\n", read_csr(NDS_USCRATCH));
      |                                                   ^~~~~~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/common/bk_assert.h:44:78: note: in definition of macro 'BK_DUMP_OUT'
   44 | #define BK_DUMP_OUT(format, ... )           shell_assert_out(true, format, ##__VA_ARGS__)
      |                                                                              ^~~~~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:260:48: error: 'NDS_UTVAL' undeclared (first use in this function)
  260 |  BK_DUMP_OUT("900 utval x 0x%lx\r\n", read_csr(NDS_UTVAL));
      |                                                ^~~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/common/bk_assert.h:44:78: note: in definition of macro 'BK_DUMP_OUT'
   44 | #define BK_DUMP_OUT(format, ... )           shell_assert_out(true, format, ##__VA_ARGS__)
      |                                                                              ^~~~~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:261:54: error: 'NDS_UDCAUSE' undeclared (first use in this function)
  261 |     BK_DUMP_OUT("2058 udcause x 0x%lx\r\n", read_csr(NDS_UDCAUSE));
      |                                                      ^~~~~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/common/bk_assert.h:44:78: note: in definition of macro 'BK_DUMP_OUT'
   44 | #define BK_DUMP_OUT(format, ... )           shell_assert_out(true, format, ##__VA_ARGS__)
      |                                                                              ^~~~~~~~~~~
In file included from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/soc/soc.h:39,
                 from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/driver/reset_reason/reset_reason.h:22,
                 from /home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:10:
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c: In function 'set_nmi_vector':
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/middleware/arch/riscv/trap_base.c:350:12: error: 'SAVE_JUMPAPP_ADDR' undeclared (first use in this function)
  350 |  REG_WRITE(SAVE_JUMPAPP_ADDR, nmi_vector);
      |            ^~~~~~~~~~~~~~~~~
/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk/include/soc/bk7258/soc.h:33:27: note: in definition of macro 'REG_WRITE'
   33 |   (*(volatile uint32_t *)(_r)) = (_v);\
      |                           ^~
[32/833] Building C object armino/bk_usb/CMakeFiles/__armino_bk_usb.dir/example/usb_cdc_acm/bk_cherry_usb_cdc_acm_api.c.obj
ninja: build stopped: subcommand failed.
ninja failed with exit code 1
make[2]: *** [Makefile:132: bk7258_cp1] Error 2
make[2]: Leaving directory '/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os/bk_idk'
make[1]: *** [Makefile:81: bk7258] Error 2
make[1]: Leaving directory '/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/vendor/T5/t5_os'
make failed
build.sh: 260: exit: Illegal number: -1
make: *** [/home/ubuntu/Documents/tuya/Projects/T5_TuyaOS-3.12.16/software/TuyaOS/scripts/mk/app.mk:195: app_by_name] Error 2

Re: T5 程序从3.12.12迁移至3.12.16后编译出错,应该怎样解决

Posted: 2025年 Aug 18日 17:13
by Memory

删除拉取的包,重新下载3.12.16版本后已恢复