# unitree_mujoco编译报错cannot find -lmujoco及库不兼容

> 原文链接：https://robotics.hellobike.com/pitfalls/2025-12-17-unitree-mujoco-98
> 频道：pitfalls | 更新日期：2025-12-17 | 标签：auto, github-issue, unitree_mujoco
> 核心摘要：链接器因架构不兼容跳过libmujoco.so导致构建失败，需从源码重编MuJoCo或修正预编译库路径与环境变量。

# unitree_mujoco编译报错cannot find -lmujoco及库不兼容

::: v-pre
> 本文由 AI 根据公开内容整理，可能有误，请以原文为准：[cannot find -lmujoco: No such file or directory](https://github.com/unitreerobotics/unitree_mujoco/issues/98)（GitHub unitreerobotics/unitree_mujoco #98）

**状态**：已解决

## 问题

在Ubuntu 22.04下构建unitree_mujoco C++仿真器时，链接器报错skipping incompatible libmujoco.so及cannot find -lmujoco: No such file or directory，导致make过程返回Error 1退出。即使已修复glfw和lodepng问题，该链接错误仍阻断编译。

## 环境

Ubuntu 22.04, ROS2 Humble, MuJoCo 3.3.6, unitree_mujoco, GCC/G++ (x86_64)

## 解决办法

1. 推荐方案：从源码编译MuJoCo 3.3.6以消除二进制不兼容，安装后执行 `export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH`。
2. 替代方案：若使用预编译包，下载mujoco-3.3.6-linux-x86_64.tar.gz解压至 `~/.mujoco/mujoco-3.3.6`，并在 `unitree_mujoco/simulate/` 目录下创建软链接 `ln -s ~/.mujoco/mujoco-3.3.6 mujoco`。
3. 配置环境变量：确保 `MUJOCO_PY_MUJOCO_PATH` 指向MuJoCo根目录，并将bin目录加入 `LD_LIBRARY_PATH`。
4. 安装系统依赖：执行 `sudo apt install libyaml-cpp-dev libspdlog-dev libboost-all-dev libglfw3-dev libgl1-mesa-dev libglew-d…

讨论原作者：@sangregoriokimpo 等，版权归原作者所有。
:::

## 原始参考来源 (Sources)

- [GitHub unitreerobotics/unitree_mujoco #98：cannot find -lmujoco: No such file or directory](https://github.com/unitreerobotics/unitree_mujoco/issues/98)