Exemplo minimal de build Mujoco com CMake

Exemplo minimal de build Mujoco com CMake com GLFW3

Este é um exemplo minimal de como construir uma aplicação Mujoco com CMake e GLFW3, ou seja, com interface gráfica.

CMakeLists.txt
cmake_minimum_required(VERSION 3.10)
project(mujocotest)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

find_package(PkgConfig REQUIRED)
pkg_search_module(MUJOCO mujoco)
pkg_search_module(GLFW REQUIRED glfw3)

if(NOT MUJOCO_FOUND)
	set(MUJOCO_INCLUDE_DIRS /opt/mujoco/include)
	set(MUJOCO_LIBRARIES /opt/mujoco/lib/libmujoco.so)
endif()

add_executable(mujocotest main.cpp)
target_include_directories(mujocotest PRIVATE ${MUJOCO_INCLUDE_DIRS} ${GLFW_INCLUDE_DIRS})
target_link_libraries(mujocotest PRIVATE ${MUJOCO_LIBRARIES} ${GLFW_LIBRARIES})

Exemplo minimal de build Mujoco com CMake sem GLFW3

Isso é útil se você quer construir uma aplicação Mujoco sem interface gráfica, por exemplo, para executar em um servidor.

CMakeLists_no_glfw.txt
cmake_minimum_required(VERSION 3.10)
project(mujocotest)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

find_package(PkgConfig REQUIRED)
pkg_search_module(MUJOCO mujoco)
if(NOT MUJOCO_FOUND)
  set(MUJOCO_INCLUDE_DIRS /opt/mujoco/include)
  set(MUJOCO_LIBRARIES /opt/mujoco/lib/libmujoco.so)
endif()

add_executable(mujocotest main.cpp)
target_include_directories(mujocotest PRIVATE ${MUJOCO_INCLUDE_DIRS})
target_link_libraries(mujocotest PRIVATE ${MUJOCO_LIBRARIES})

Check out similar posts by category: Mujoco CMake