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

C++库链接、构建与共享问题:链接器无法找到-lmmath

问题排查与解决

核心原因

链接器通过-lxxx参数查找库时,会自动匹配libxxx.so(动态库)或libxxx.a(静态库)的命名规则。你用了-lmmath,链接器会寻找libmmath.so,但你的实际库文件是libmy_math.so,名字不匹配导致找不到。

解决方法

方法1:修正链接命令的库名参数

把链接命令中的-lmmath改成-lmy_math,执行:

gcc -o main main.o -lmy_math -L.

方法2:创建软链接匹配预期库名

如果不想修改命令,可以给现有库创建一个符合-lmmath查找规则的软链接:

ln -s libmy_math.so libmmath.so

之后再执行原来的链接命令即可。

额外验证(可选)

如果执行后仍有问题,可检查:

  • libmy_math.so是否为有效的共享库,可通过file libmy_math.so查看其架构是否与你的编译环境匹配(比如32位/64位)
  • 确认main.o的编译参数与库的编译参数一致(比如是否都用了-fPIC编译动态库所需的位置无关代码)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 05:15:55