如何在Yocto配方中禁用"-Werror=unused-variable"编译标志
Yocto屏蔽unused-variable编译报错的配方配置方案
这个报错是编译参数开启了-Werror规则,把unused-variable类警告升级为错误导致的,可通过在对应.bb配方或.bbappend附加文件中添加编译参数屏蔽,具体配置分两种场景:
方案1:仅屏蔽当前类型的报错(推荐)
精准关闭unused-variable类警告的错误升级,不会影响其他编译规则的校验,安全性最高:
# 对C代码生效 TARGET_CFLAGS += "-Wno-error=unused-variable" # 对C++代码生效 TARGET_CXXFLAGS += "-Wno-error=unused-variable"
方案2:关闭所有-Werror校验(仅临时调试使用)
如果需要临时跳过所有警告类报错的拦截,可使用以下配置,不建议正式版本使用:
TARGET_CFLAGS += "-Wno-error" TARGET_CXXFLAGS += "-Wno-error"
注意事项
- 如果修改配置后不生效,可检查配方内部是否存在硬编码覆盖
CFLAGS/CXXFLAGS的逻辑,如有需要调整参数传递规则 - 该配置为临时规避方案,最优修复方式是修改对应源码移除未使用的变量,避免潜在的代码逻辑问题
内容的提问来源于stack exchange,提问作者Nilesh
相关产品推荐
相关产品推荐

