M2芯片MacBook Air编译Chromium时出现不安全缓冲区访问错误
解决M2 MacOS Sonoma下Chromium编译的不安全缓冲区访问错误
方案1:禁用特定编译警告
在你的args.gn文件中添加以下配置,直接屏蔽-Wunsafe-buffer-usage警告(该警告在部分MacOS编译器版本下会被误触发):
target_cpu = "arm64" is_debug = false is_component_build = true symbol_level = 0 extra_cflags = ["-Wno-unsafe-buffer-usage"] extra_cxxflags = ["-Wno-unsafe-buffer-usage"]
修改后执行gn gen out/Default更新构建配置,再重新运行autoninja -C out/Default编译。
方案2:同步最新代码并清理构建缓存
该问题可能是代码版本与MacOS Sonoma编译器的兼容性bug,同步最新Chromium代码大概率能修复:
- 拉取最新代码:
git pull
- 清理旧构建缓存:
gn clean out/Default
- 重新生成构建配置并编译:
gn gen out/Default autoninja -C out/Default chrome
方案3:调整构建模式
组件构建(component build)在某些场景下可能触发额外的编译器警告,尝试关闭该模式:
修改args.gn为:
target_cpu = "arm64" is_debug = false is_component_build = false symbol_level = 0
重新生成配置后编译。
内容的提问来源于stack exchange,提问作者Rudi
相关产品推荐
相关产品推荐

