You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在make命令的CFLAGS变量中添加-Wno-deprecated以消除弃用警告

解决make命令传递CFLAGS时的"empty variable name"错误

你遇到的问题有两个核心原因:

  • 命令行给make传递变量时,不能用Makefile内部的+=语法——这会让make误判为要定义空变量,直接触发报错。
  • 多写了-D前缀:-Wno-deprecated是GCC/Clang的警告控制选项,和预处理器宏定义无关,不需要加-D(-D是用来定义宏的,比如-DDEBUG)。

正确的命令写法分两种场景:

  1. 直接覆盖原有CFLAGS(不需要保留Makefile里的CFLAGS内容):
make all CFLAGS="-Wno-deprecated"
  1. 在原有CFLAGS基础上追加选项(保留Makefile里的CFLAGS,新增警告控制选项):
make all CFLAGS='$(CFLAGS) -Wno-deprecated'

用单引号是为了避免shell提前展开$(CFLAGS),让make自己处理这个变量引用。

执行上述命令后就能正常添加-Wno-deprecated选项,消除弃用警告。

内容的提问来源于stack exchange,提问作者keith bradley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 19:42:02