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

Mac M1编译C程序遇架构不兼容链接警告的解决方法咨询

Mac M1编译C程序时libpng架构不匹配警告的解决方法

方案1:重新编译适配arm64的libpng

  • 若libpng是通过Homebrew安装的,先卸载现有x86_64版本:brew uninstall libpng
  • 确保终端以arm64原生模式运行(右键终端→「显示简介」,取消勾选「使用Rosetta打开」)
  • 重新安装libpng:brew install libpng,Homebrew会自动编译生成适配arm64的库文件

方案2:通过Rosetta转译环境编译程序

  • 右键终端→「显示简介」,勾选「使用Rosetta打开」,启动x86_64架构的终端会话
  • 在该终端内重新编译你的C程序,此时编译环境为x86_64,会与现有libpng的架构匹配

方案3:生成通用二进制程序

  • 编译时同时指定arm64和x86_64双架构,让程序兼容两种环境,示例编译命令:
    gcc your_source.c -o output_program -arch arm64 -arch x86_64 -lpng
  • 生成的程序会自动适配当前系统架构,无需替换现有libpng

其他M1设备能正常运行,通常是因为他们的libpng已经是arm64版本,或是在Rosetta环境下完成的编译。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 02:13:11