错误 :
代码:
全选c:/users/stanzlavos/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: C:UsersSTANZL~1AppDataLocalTemparduino_build_739272/IRControl.ino.elf sec
tion `.data' will not fit in region `dram0_0_seg'
c:/users/stanzlavos/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: address 0x40009a98 of C:UsersSTANZL~1AppDataLocalTemparduino_build_739272/IRControl.ino.elf section `.bss' is not within region `dram0_0_seg'
c:/users/stanzlavos/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: address 0x40009a98 of C:UsersSTANZL~1AppDataLocalTemparduino_build_739272/IRControl.ino.elf section `.bss' is not within region `dram0_0_seg'
collect2.exe: error: ld returned 1 exit status
这个工作区有大约 25 个文件。我有另一个工作区,它具有几乎完全相同的代码和一些编译得很好的额外文件。当我遇到问题时,我正在手动将一些更改从一个工作区移动到另一个工作区。
在其中一个 cpp 文件中,有一个带有“开关”块的函数。如果我只注释掉那个开关块的内容,就没有问题。我尝试保留该代码并从编译中取出一些其他文件,但问题仍然存在......
当它编译时(删除开关块内容后),输出显示:
代码:
全选Sketch uses 376748 bytes (36%) of program storage space. Maximum is 1044464 bytes.
Global variables use 39504 bytes (48%) of dynamic memory, leaving 42416 bytes for local variables. Maximum is 81920 bytes.
更新:在 switch case 中,调用了来自另一个文件的 API。API 引用了一个包含 8192 个 struct 元素的全局数组:
代码:
全选typedef struct
{
int type;
int bits;
unsigned long value;
} ir_send_cmd_t;