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

在CMake项目中使用Mujoco遇变量为空问题求助

问题分析与解决方案

Mujoco 2.x版本的CMake配置采用现代CMake目标导向设计,不再提供mujoco_INCLUDE_DIRS、mujoco_LIBRARIES这类传统变量,而是通过导出mujoco::mujoco导入目标来管理依赖信息,这就是你能检测到Mujoco但变量为空的核心原因。

修正后的CMake配置

无需依赖空变量,直接使用导入目标链接项目即可,CMake会自动处理头文件路径、库链接等所有细节:

set(MUJOCO_FOLDER /opt/mujoco/lib/cmake)
find_package(mujoco 2.3.7 REQUIRED PATHS ${MUJOCO_FOLDER} NO_DEFAULT_PATH)
if (mujoco_FOUND)
    message(STATUS "Mujoco found successfully")
endif()

# 替换为你的项目目标(可执行文件或库名称)
add_executable(your_project main.cpp)
# 链接Mujoco导入目标
target_link_libraries(your_project PRIVATE mujoco::mujoco)

关键说明

  • 导入目标mujoco::mujoco已封装所有必要依赖信息:包括头文件目录、库文件路径、编译选项等,无需手动设置include_directories或link_directories。
  • 若特殊场景下需手动获取头文件目录,可通过$<TARGET_PROPERTY:mujoco::mujoco,INTERFACE_INCLUDE_DIRECTORIES>获取;获取库路径则用$<TARGET_FILE:mujoco::mujoco>,但常规开发中直接链接目标即可满足需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 12:49:55