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

Mac安装marty执行sudo make报library not found for -lm错误

报错场景

在Mac设备上编译安装marty,执行sudo make时触发链接阶段报错:

ld: library not found for -lm

根因

MacOS(Darwin内核)没有独立拆分的libm数学库,相关数学函数实现已经整合进系统基础库libSystem中,编译时不需要额外加-lm链接参数。多数面向Linux开发的项目Makefile默认硬编码了-lm链接项,在Mac上编译就会触发找不到库的错误;另外如果本地没安装Xcode命令行工具,系统库路径未被正确识别,也会抛出同类报错。

解决步骤
  • 先补全基础编译环境:终端执行xcode-select --install,按照弹出的引导窗口完成Xcode命令行工具安装,安装完成后重启终端,回到项目目录先执行make clean清理之前的编译缓存,再重试编译。
  • 如果装完工具链仍报错,直接修改项目根目录下的Makefile:全局搜索-lm字段,把所有匹配到的-lm参数直接删除即可,Mac环境下不需要单独链接数学库。
  • 改完配置后再次执行make clean清理中间文件,再执行sudo make完成编译安装即可。

注意:不要尝试通过包管理器安装独立的libm包,Mac平台没有官方独立分发的libm,第三方源提供的同名包基本是Linux交叉编译版本,安装后会触发CPU架构不匹配、库版本冲突的新问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 17:57:33