17:18:59 **** Build of configuration obj for project JT006C_AirQuality ****
make -j4 all
Memory region Used Size Region Size %age Used
FLASH: 149576 B 448 KB 32.60%
RAM: 18720 B 30 KB 60.94%
text data bss dec hex filename
148644 932 8304 157880 268b8 JT006C_AirQuality.elf
riscv-none-embed-objdump: Warning: There is a hole [0x8 - 0x21] in .debug_loc section.
...
riscv-none-embed-objdump: Warning: There is a hole [0x2266 - 0x2288] in .debug_loc section.
17:19:06 Build Finished. 0 errors, 0 warnings. (took 7s.592ms)
#ifdef DEBUG
uart2_init(115200);
#endif
通过使能 DEBUG,就没有Warning 了。PRINTF 一定要全部注释了吗?
您好,不必都注释掉,删去工程配置中的DEBUG宏即可。
通过使能 DEBUG,就有下面的Warning 了,不是Build Warning
riscv-none-embed-objdump: Warning: There is a hole [0x8 - 0x21] in .debug_loc section.
...
riscv-none-embed-objdump: Warning: There is a hole [0x2266 - 0x2288] in .debug_loc section.
您好,您找一个EVT包中的例程直接编译看看有没有hole相关警告,或者删掉DEBUG宏看看有没有报错或者警告。如果没有警告,可能是工程配置问题;如果还是有警告,可能是编译器问题。
需要打印就保留DEBUG,可以修改DEBUG数值为需要的串口n。
不需要打印删掉DEBUG的话,小写的printf()需要注释掉,否则会报错警告,不过与您图中的警告不同;大写的PRINT()可以不用注释,删掉DEBUG宏后就不打印了。
删掉DEBUG宏没有报错或者警告。应该是工程配置问题,如何修改配置?
说错了:删掉DEBUG宏就有报错或者警告。应该是工程配置问题,如何修改配置?
add DEBUG宏就没有报错或者警告
您好,删掉DEBUG宏,有报错或者警告。如果还是有警告,可能是编译器问题。这么说是编译器问题???
编译器配置默认DEMO工程的。
您用的编译器版本是多少,工程可以发来帮您检查一下吗,能复现这个hole警告的工程就行,发往邮箱zhaiyw@wch.cn。
删掉DEBUG宏,有报错或者警告。
加上DEBUG宏,没有报错或者警告。
用的编译器版本是 18.3
您把工程发来我们检查一下,我这边用1.83测试删去DEBUG不会有hole警告。
已发您邮箱。邮箱zhaiyw@wch.cn
Dear TECH_JW: 在吗?问题出在编译器上,原来的DEMO工程也有hole warning。DEMO工程:BleTouchKey_lowPower.rar
您好,您邮件发来的工程已经转给相关同事排查。目前看来是工程问题,我们这边也出现hole警告。您那边可以用官网下载的EVT中的工程排查看看,我们这边测试用官网的peripheral例程,删去DEBUG不会有HOLE警告。
出现hole警告后编译结果是否正常,是否影响正常使用,不影响的话您先继续使用,我们这边还在排查。