Failed in setup.py install on Ubuntu 24 in VMWare
I hit the error when running setup install on my Ubuntu 24
(mjpc) leeygang@linux:~/projects/mujoco_mpc/python$ python setup.py install --verbose /home/leeygang/anaconda3/envs/mjpc/lib/python3.12/site-packages/setuptools/init.py:85: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated. !!
********************************************************************************
Requirements should be satisfied by a PEP 517 installer.
If you are using pip, you can try `pip install --use-pep517`.
********************************************************************************
!! dist.fetch_build_eggs(dist.setup_requires) running install /home/leeygang/anaconda3/envs/mjpc/lib/python3.12/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. !!
********************************************************************************
Please avoid running ``setup.py`` directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!! self.initialize_options() /home/leeygang/anaconda3/envs/mjpc/lib/python3.12/site-packages/setuptools/_distutils/cmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated. !!
********************************************************************************
Please avoid running ``setup.py`` and ``easy_install``.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://github.com/pypa/setuptools/issues/917 for details.
********************************************************************************
!!
self.initialize_options()
running bdist_egg
running egg_info
writing mujoco_mpc.egg-info/PKG-INFO
writing dependency_links to mujoco_mpc.egg-info/dependency_links.txt
writing requirements to mujoco_mpc.egg-info/requires.txt
writing top-level names to mujoco_mpc.egg-info/top_level.txt
reading manifest file 'mujoco_mpc.egg-info/SOURCES.txt'
writing manifest file 'mujoco_mpc.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
running generate_proto_grpc
touch /home/leeygang/projects/mujoco_mpc/python/build/lib.linux-x86_64-cpython-312/mujoco_mpc/proto/init.py
running copy_task_assets
copying mujoco_mpc/agent.py -> build/lib.linux-x86_64-cpython-312/mujoco_mpc
copying mujoco_mpc/direct_test.py -> build/lib.linux-x86_64-cpython-312/mujoco_mpc
copying mujoco_mpc/filter.py -> build/lib.linux-x86_64-cpython-312/mujoco_mpc
copying mujoco_mpc/ui_agent_test.py -> build/lib.linux-x86_64-cpython-312/mujoco_mpc
copying mujoco_mpc/agent_test.py -> build/lib.linux-x86_64-cpython-312/mujoco_mpc
copying mujoco_mpc/mjpc_parameters.py -> build/lib.linux-x86_64-cpython-312/mujoco_mpc
copying mujoco_mpc/init.py -> build/lib.linux-x86_64-cpython-312/mujoco_mpc
copying mujoco_mpc/filter_test.py -> build/lib.linux-x86_64-cpython-312/mujoco_mpc
copying mujoco_mpc/direct.py -> build/lib.linux-x86_64-cpython-312/mujoco_mpc
running build_ext
Configuring CMake with the following arguments:
-DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE
-DCMAKE_BUILD_TYPE:STRING=Release
-DBUILD_TESTING:BOOL=OFF
-DMJPC_BUILD_GRPC_SERVICE:BOOL=ON
-- mujoco::FindOrFetch: checking for targets in package mujoco
-- mujoco::FindOrFetch: checking for targets in package mujoco - target mujoco::mujoco not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve mujoco
-- mujoco::FindOrFetch: checking for targets in package qhull
-- mujoco::FindOrFetch: checking for targets in package qhull - target qhull not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve qhull
CMake Deprecation Warning at build/_deps/qhull-src/CMakeLists.txt:70 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument
-- -- ========== qhull Build Information ========== -- Build Version: 8.1-alpha1 -- Install Prefix (CMAKE_INSTALL_PREFIX): /usr/local -- Binary Directory (BIN_INSTALL_DIR): bin -- Library Directory (LIB_INSTALL_DIR): lib -- Include Directory (INCLUDE_INSTALL_DIR): include -- Documentation Directory (DOC_INSTALL_DIR): share/doc/qhull -- Man Pages Directory (MAN_INSTALL_DIR): share/man/man1 -- CMake Directory (CMAKE_INSTALL_DIR): lib/cmake/QHull -- PkgConfig Directory (PKGCONFIG_INSTALL_DIR):lib/pkgconfig -- Build Type (CMAKE_BUILD_TYPE): Release -- Build static libraries: ON -- Build shared library: OFF -- Use shared library for linking apps: OFF -- Build tests: OFF -- To override these options, add -D{OPTION_NAME}=... to the cmake command -- Build the debug targets -DCMAKE_BUILD_TYPE=Debug
-- To build and install qhull, enter "make" and "make install" -- To smoketest qhull, enter "ctest"
-- mujoco::FindOrFetch: Using FetchContent to retrieve qhull - Done
-- mujoco::FindOrFetch: checking for targets in package tinyxml2
-- mujoco::FindOrFetch: checking for targets in package tinyxml2 - target tinyxml2 not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve tinyxml2
-- mujoco::FindOrFetch: Using FetchContent to retrieve tinyxml2 - Done
-- mujoco::FindOrFetch: checking for targets in package tinyobjloader
-- mujoco::FindOrFetch: checking for targets in package tinyobjloader - target tinyobjloader not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve tinyobjloader
CMake Deprecation Warning at build/_deps/tinyobjloader-src/CMakeLists.txt:5 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument
-- mujoco::FindOrFetch: Using FetchContent to retrieve tinyobjloader - Done
-- mujoco::FindOrFetch: checking for targets in package sdflib
-- mujoco::FindOrFetch: checking for targets in package sdflib - target SdfLib not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve sdflib
CMake Deprecation Warning at build/_deps/glm_lib-src/CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument
CMake Deprecation Warning at build/_deps/glm_lib-src/CMakeLists.txt:2 (cmake_policy): Compatibility with CMake < 3.5 will be removed from a future version of CMake.
Update the VERSION argument
-- GLM is a header only library, no need to build it. Set the option GLM_TEST_ENABLE with ON to build and run the test bench
-- Build spdlog: 1.9.2
-- Build type: Release
-- mujoco::FindOrFetch: Using FetchContent to retrieve sdflib - Done
-- mujoco::FindOrFetch: checking for targets in package ccd
-- mujoco::FindOrFetch: checking for targets in package ccd - target ccd not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve ccd
CMake Deprecation Warning at build/_deps/ccd-src/CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument
CMake Warning (dev) at build/_deps/ccd-src/CMakeLists.txt:9 (project): Policy CMP0048 is not set: project() command manages VERSION variables. Run "cmake --help-policy CMP0048" for policy details. Use the cmake_policy command to set the policy and suppress this warning.
The following variable(s) would be set to empty:
PROJECT_VERSION
PROJECT_VERSION_MAJOR
PROJECT_VERSION_MINOR
PROJECT_VERSION_PATCH
This warning is for project developers. Use -Wno-dev to suppress it.
-- mujoco::FindOrFetch: Using FetchContent to retrieve ccd - Done
-- mujoco::FindOrFetch: checking for targets in package mujoco
-- mujoco::FindOrFetch: checking for targets in package mujoco - found
-- mujoco::FindOrFetch: checking for targets in package glfw3
-- mujoco::FindOrFetch: checking for targets in package glfw3 - target glfw not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve glfw3
-- Using X11 for window creation
-- mujoco::FindOrFetch: Using FetchContent to retrieve glfw3 - Done
-- mujoco::FindOrFetch: Using FetchContent to retrieve mujoco - Done
-- mujoco::FindOrFetch: checking for targets in package GTest
-- mujoco::FindOrFetch: checking for targets in package GTest - target gtest not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve googletest
-- mujoco::FindOrFetch: Using FetchContent to retrieve googletest - Done
-- mujoco::FindOrFetch: checking for targets in package absl
-- mujoco::FindOrFetch: checking for targets in package absl - target absl::core_headers not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve abseil-cpp
-- mujoco::FindOrFetch: Using FetchContent to retrieve abseil-cpp - Done
-- mujoco::FindOrFetch: checking for targets in package glfw
-- mujoco::FindOrFetch: checking for targets in package glfw - found
-- mujoco::FindOrFetch: checking for targets in package gRPC
-- mujoco::FindOrFetch: checking for targets in package gRPC - target gRPC not defined.
-- mujoco::FindOrFetch: Using FetchContent to retrieve gRPC
CMake Deprecation Warning at build/_deps/grpc-src/third_party/cares/cares/CMakeLists.txt:1 (CMAKE_MINIMUM_REQUIRED):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument
--
-- 25.0.0
-- Checking for module 'libsystemd>=233'
-- Package 'libsystemd', required by 'virtual:world', not found
-- mujoco::FindOrFetch: Using FetchContent to retrieve gRPC - Done
We need the following for agent/direct_protos:
_GRPC_CPP_PLUGIN_EXECUTABLE$<TARGET_FILE:grpc_cpp_plugin>
AGENT_SERVICE_COMPILE_OPTIONS=
AGENT_SERVICE_COMPILE_OPTIONS=
DIRECT_SERVICE_COMPILE_OPTIONS=
FILTER_SERVICE_COMPILE_OPTIONS=
-- Configuring done (2.5s)
CMake Warning (dev) at build/_deps/grpc-src/third_party/cares/cares/src/lib/CMakeLists.txt:72 (ADD_LIBRARY):
Policy CMP0063 is not set: Honor visibility properties for all target
types. Run "cmake --help-policy CMP0063" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
Target "c-ares" of type "STATIC_LIBRARY" has the following visibility properties set for C:
C_VISIBILITY_PRESET
For compatibility CMake is not honoring them for this target. This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at build/_deps/grpc-src/third_party/cares/cares/src/tools/CMakeLists.txt:7 (ADD_EXECUTABLE): Policy CMP0063 is not set: Honor visibility properties for all target types. Run "cmake --help-policy CMP0063" for policy details. Use the cmake_policy command to set the policy and suppress this warning.
Target "ahost" of type "EXECUTABLE" has the following visibility properties set for C:
C_VISIBILITY_PRESET
For compatibility CMake is not honoring them for this target. This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at build/_deps/grpc-src/third_party/cares/cares/src/tools/CMakeLists.txt:24 (ADD_EXECUTABLE): Policy CMP0063 is not set: Honor visibility properties for all target types. Run "cmake --help-policy CMP0063" for policy details. Use the cmake_policy command to set the policy and suppress this warning.
Target "adig" of type "EXECUTABLE" has the following visibility properties set for C:
C_VISIBILITY_PRESET
For compatibility CMake is not honoring them for this target. This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at build/_deps/grpc-src/third_party/cares/cares/src/tools/CMakeLists.txt:41 (ADD_EXECUTABLE): Policy CMP0063 is not set: Honor visibility properties for all target types. Run "cmake --help-policy CMP0063" for policy details. Use the cmake_policy command to set the policy and suppress this warning.
Target "acountry" of type "EXECUTABLE" has the following visibility properties set for C:
C_VISIBILITY_PRESET
For compatibility CMake is not honoring them for this target. This warning is for project developers. Use -Wno-dev to suppress it.
-- Generating done (0.4s)
-- Build files have been written to: /home/leeygang/projects/mujoco_mpc/build
Building agent_server and ui_agent_server with CMake
[0/2] Re-checking globbed directories...
ninja: error: stat(mjpc/grpc/CMakeFiles/agent_server.dir/agent_server.cc.o): Bad message
Traceback (most recent call last):
File "/home/leeygang/projects/mujoco_mpc/python/setup.py", line 262, in
Were you able to build and run C++ MJPC on this virtual machine running Ubuntu 24?
I would recommend trying Ubuntu 20.04. This is the version that we test with Github Actions