Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation fails (egl_probe) #105

Closed
1 of 2 tasks
qgallouedec opened this issue Apr 26, 2024 · 17 comments · Fixed by #191
Closed
1 of 2 tasks

Installation fails (egl_probe) #105

qgallouedec opened this issue Apr 26, 2024 · 17 comments · Fixed by #191
Labels
🐛 Bug Something isn't working

Comments

@qgallouedec
Copy link
Member

System Info

- `lerobot` version: unknown
- Platform: macOS-14.4.1-x86_64-i386-64bit
- Python version: 3.10.14
- Huggingface_hub version: 0.22.2
- Numpy version: 1.26.4
- PyTorch version (GPU?): 2.2.2 (False)
- Cuda version: N/A

Information

  • One of the scripts in the examples/ folder of LeRobot
  • My own task or dataset (give details below)

Reproduction

python -m pip install .

Logs

  Building wheel for egl_probe (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [394 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.macosx-10.9-x86_64-cpython-310
      creating build/lib.macosx-10.9-x86_64-cpython-310/egl_probe
      copying egl_probe/get_available_devices.py -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe
      copying egl_probe/__init__.py -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe
      running egg_info
      writing egl_probe.egg-info/PKG-INFO
      writing dependency_links to egl_probe.egg-info/dependency_links.txt
      writing top-level names to egl_probe.egg-info/top_level.txt
      reading manifest file 'egl_probe.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      adding license file 'LICENSE'
      writing manifest file 'egl_probe.egg-info/SOURCES.txt'
      /usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'egl_probe.glad' is absent from the `packages` configuration.
      !!
      
              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'egl_probe.glad' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.
      
              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'egl_probe.glad' is explicitly added
              to the `packages` configuration field.
      
              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).
      
              You can read more about "package discovery" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
      
              If you don't want 'egl_probe.glad' to be distributed and are
              already explicitly excluding 'egl_probe.glad' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.
      
              You can read more about "package data files" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html
      
      
              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************
      
      !!
        check.warn(importable)
      /usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'egl_probe.glad.EGL' is absent from the `packages` configuration.
      !!
      
              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'egl_probe.glad.EGL' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.
      
              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'egl_probe.glad.EGL' is explicitly added
              to the `packages` configuration field.
      
              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).
      
              You can read more about "package discovery" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
      
              If you don't want 'egl_probe.glad.EGL' to be distributed and are
              already explicitly excluding 'egl_probe.glad.EGL' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.
      
              You can read more about "package data files" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html
      
      
              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************
      
      !!
        check.warn(importable)
      /usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'egl_probe.glad.KHR' is absent from the `packages` configuration.
      !!
      
              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'egl_probe.glad.KHR' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.
      
              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'egl_probe.glad.KHR' is explicitly added
              to the `packages` configuration field.
      
              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).
      
              You can read more about "package discovery" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
      
              If you don't want 'egl_probe.glad.KHR' to be distributed and are
              already explicitly excluding 'egl_probe.glad.KHR' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.
      
              You can read more about "package data files" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html
      
      
              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************
      
      !!
        check.warn(importable)
      /usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'egl_probe.glad.X11' is absent from the `packages` configuration.
      !!
      
              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'egl_probe.glad.X11' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.
      
              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'egl_probe.glad.X11' is explicitly added
              to the `packages` configuration field.
      
              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).
      
              You can read more about "package discovery" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
      
              If you don't want 'egl_probe.glad.X11' to be distributed and are
              already explicitly excluding 'egl_probe.glad.X11' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.
      
              You can read more about "package data files" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html
      
      
              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************
      
      !!
        check.warn(importable)
      /usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'egl_probe.glad.X11.extensions' is absent from the `packages` configuration.
      !!
      
              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'egl_probe.glad.X11.extensions' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.
      
              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'egl_probe.glad.X11.extensions' is explicitly added
              to the `packages` configuration field.
      
              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).
      
              You can read more about "package discovery" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
      
              If you don't want 'egl_probe.glad.X11.extensions' to be distributed and are
              already explicitly excluding 'egl_probe.glad.X11.extensions' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.
      
              You can read more about "package data files" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html
      
      
              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************
      
      !!
        check.warn(importable)
      /usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'egl_probe.glad.glad' is absent from the `packages` configuration.
      !!
      
              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'egl_probe.glad.glad' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.
      
              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'egl_probe.glad.glad' is explicitly added
              to the `packages` configuration field.
      
              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).
      
              You can read more about "package discovery" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
      
              If you don't want 'egl_probe.glad.glad' to be distributed and are
              already explicitly excluding 'egl_probe.glad.glad' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.
      
              You can read more about "package data files" on setuptools documentation page:
      
              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html
      
      
              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************
      
      !!
        check.warn(importable)
      copying egl_probe/CMakeLists.txt -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe
      copying egl_probe/query_devices.cpp -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe
      copying egl_probe/test_device.cpp -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe
      creating build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad
      copying egl_probe/glad/egl.cpp -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad
      copying egl_probe/glad/gl.cpp -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad
      copying egl_probe/glad/glx_dyn.cpp -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad
      copying egl_probe/glad/linmath.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad
      creating build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/EGL
      copying egl_probe/glad/EGL/eglplatform.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/EGL
      creating build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/KHR
      copying egl_probe/glad/KHR/khrplatform.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/KHR
      creating build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/X.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/XKBlib.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xatom.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xfuncproto.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xfuncs.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xlib.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/XlibConf.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xlibint.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xmd.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xosdefs.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xproto.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xprotostr.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/Xutil.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/cursorfont.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/keysym.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      copying egl_probe/glad/X11/keysymdef.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11
      creating build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11/extensions
      copying egl_probe/glad/X11/extensions/XKB.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11/extensions
      copying egl_probe/glad/X11/extensions/XKBstr.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11/extensions
      copying egl_probe/glad/X11/extensions/XShm.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11/extensions
      copying egl_probe/glad/X11/extensions/Xext.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11/extensions
      copying egl_probe/glad/X11/extensions/extutil.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11/extensions
      copying egl_probe/glad/X11/extensions/shape.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11/extensions
      copying egl_probe/glad/X11/extensions/shapeconst.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11/extensions
      copying egl_probe/glad/X11/extensions/shm.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/X11/extensions
      creating build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/glad
      copying egl_probe/glad/glad/egl.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/glad
      copying egl_probe/glad/glad/gl.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/glad
      copying egl_probe/glad/glad/glx.h -> build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/glad/glad
      running build_ext
      CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
        Compatibility with CMake < 3.5 will be removed from a future version of
        CMake.
      
        Update the VERSION argument <min> value or use a ...<max> suffix to tell
        CMake that the project does not need compatibility with older versions.
      
      
      -- The C compiler identification is Clang 17.0.6
      -- The CXX compiler identification is Clang 17.0.6
      -- Detecting C compiler ABI info
      -- Detecting C compiler ABI info - done
      -- Check for working C compiler: /opt/homebrew/opt/llvm/bin/clang - skipped
      -- Detecting C compile features
      -- Detecting C compile features - done
      -- Detecting CXX compiler ABI info
      -- Detecting CXX compiler ABI info - done
      -- Check for working CXX compiler: /opt/homebrew/opt/llvm/bin/clang++ - skipped
      -- Detecting CXX compile features
      -- Detecting CXX compile features - done
      -- Configuring done (4.1s)
      -- Generating done (0.0s)
      -- Build files have been written to: /private/var/folders/z7/y_b89yb93892c6g3g2x8wk_h0000gn/T/pip-install-lz5xiial/egl-probe_30ad3afb30db4508b76526bc03c673a2/build/lib.macosx-10.9-x86_64-cpython-310/egl_probe/build
      [ 12%] Building CXX object CMakeFiles/query_devices.dir/glad/gl.cpp.o
      [ 25%] Building CXX object CMakeFiles/test_device.dir/glad/gl.cpp.o
      [ 37%] Building CXX object CMakeFiles/query_devices.dir/query_devices.cpp.o
      [ 50%] Building CXX object CMakeFiles/query_devices.dir/glad/egl.cpp.o
      [ 62%] Building CXX object CMakeFiles/test_device.dir/glad/egl.cpp.o
      [ 75%] Building CXX object CMakeFiles/test_device.dir/test_device.cpp.o
      [100%] Linking CXX executable query_devices
      [100%] Linking CXX executable test_device
      ld: warning: ignoring file '/opt/homebrew/Cellar/llvm/17.0.6_1/lib/libunwind.1.0.dylib': found architecture 'arm64', required architecture 'x86_64'
      ld: warning: ignoring file '/opt/homebrew/Cellar/llvm/17.0.6_1/lib/libunwind.1.0.dylib': found architecture 'arm64', required architecture 'x86_64'
      Undefined symbols for architecture x86_64:
        "__Unwind_Resume", referenced from:
            _main in test_device.cpp.o
      ld: symbol(s) not found for architecture x86_64
      Undefined symbols for architecture x86_64:
        "__Unwind_Resume", referenced from:
            _main in query_devices.cpp.o
      ld: symbol(s) not found for architecture x86_64
      clang++: error: linker command failed with exit code 1 (use -v to see invocation)
      clang++: error: linker command failed with exit code 1 (use -v to see invocation)
      make[2]: *** [test_device] Error 1
      make[2]: *** [query_devices] Error 1
      make[1]: *** [CMakeFiles/test_device.dir/all] Error 2
      make[1]: *** Waiting for unfinished jobs....
      make[1]: *** [CMakeFiles/query_devices.dir/all] Error 2
      make: *** [all] Error 2
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/private/var/folders/z7/y_b89yb93892c6g3g2x8wk_h0000gn/T/pip-install-lz5xiial/egl-probe_30ad3afb30db4508b76526bc03c673a2/setup.py", line 50, in <module>
          setup(
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/__init__.py", line 104, in setup
          return distutils.core.setup(**attrs)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 184, in setup
          return run_commands(dist)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 200, in run_commands
          dist.run_commands()
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
          self.run_command(cmd)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/dist.py", line 967, in run_command
          super().run_command(command)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/wheel/bdist_wheel.py", line 368, in run
          self.run_command("build")
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
          self.distribution.run_command(command)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/dist.py", line 967, in run_command
          super().run_command(command)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/_distutils/command/build.py", line 132, in run
          self.run_command(cmd_name)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
          self.distribution.run_command(command)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/dist.py", line 967, in run_command
          super().run_command(command)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/private/var/folders/z7/y_b89yb93892c6g3g2x8wk_h0000gn/T/pip-install-lz5xiial/egl-probe_30ad3afb30db4508b76526bc03c673a2/setup.py", line 26, in run
          self.build_extension(ext)
        File "/private/var/folders/z7/y_b89yb93892c6g3g2x8wk_h0000gn/T/pip-install-lz5xiial/egl-probe_30ad3afb30db4508b76526bc03c673a2/setup.py", line 38, in build_extension
          subprocess.check_call("cmake ..; make -j", cwd=build_dir, shell=True)
        File "/usr/local/Caskroom/miniforge/base/envs/lerobot/lib/python3.10/subprocess.py", line 369, in check_call
          raise CalledProcessError(retcode, cmd)
      subprocess.CalledProcessError: Command 'cmake ..; make -j' returned non-zero exit status 2.
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for egl_probe
  Running setup.py clean for egl_probe
  Building wheel for asciitree (setup.py) ... done
  Created wheel for asciitree: filename=asciitree-0.3.3-py3-none-any.whl size=5034 sha256=59ff1abdaf119a83b7490140a16ab0b5f4deb4549a6543f1cdb70223ad12d47b
  Stored in directory: /private/var/folders/z7/y_b89yb93892c6g3g2x8wk_h0000gn/T/pip-ephem-wheel-cache-kz5egi7z/wheels/7f/4e/be/1171b40f43b918087657ec57cf3b81fa1a2e027d8755baa184
Successfully built lerobot robomimic antlr4-python3-runtime asciitree
Failed to build egl_probe
ERROR: Could not build wheels for egl_probe, which is required to install pyproject.toml-based projects

Expected behavior

No response

@aliberts
Copy link
Collaborator

I am unable to reproduce with my specs:

- `lerobot` version: 0.1.0
- Platform: macOS-14.4.1-arm64-arm-64bit
- Python version: 3.10.14
- Huggingface_hub version: 0.21.4
- Numpy version: 1.26.4
- PyTorch version (GPU?): 2.3.0 (False)
- Cuda version: N/A

This is definitely coming from non-python deps. Do you have cmake installed ?
A brew list would be useful as well.

@aliberts
Copy link
Collaborator

Also, could you try to change the following in pyproject.toml and tell me if this changes anything?

[build-system]
- requires = ["poetry-core>=1.5.0"]
+ requires = ["poetry-core"]

@qgallouedec
Copy link
Member Author

Do you have cmake installed ?

Yes

A brew list would be useful as well.

==> Formulae
abseil
aom
aribb24
autoconf
bdw-gc
boost
box2d
brotli
c-ares
ca-certificates
cairo
certifi
cjson
cmake
cmocka
dav1d
docbook
docbook-xsl
expat
ffmpeg
flac
fontconfig
freetype
frei0r
fribidi
gcc
gcc@9
gdbm
gdk-pixbuf
gettext
ghostscript
giflib
git
git-gui
glfw
glib
gmp
gnu-getopt
gnupg
gnutls
gobject-introspection
gpgme
graphite2
guile
harfbuzz
highway
hwloc
icu4c
imagemagick
imath
isl
jasper
jbig2dec
jpeg
jpeg-turbo
jpeg-xl
jsoncpp
jupyterlab
lame
leptonica
libarchive
libass
libassuan
libb2
libbluray
libcbor
libde265
libevent
libffi
libfido2
libgcrypt
libgpg-error
libheif
libidn
libidn2
libksba
liblqr
libmicrohttpd
libmpc
libnghttp2
libogg
libomp
libpng
libpthread-stubs
libraw
librist
librsvg
libsamplerate
libsndfile
libsodium
libsoxr
libssh
libtasn1
libtiff
libtool
libunibreak
libunistring
libusb
libuv
libvidstab
libvmaf
libvorbis
libvpx
libx11
libxau
libxcb
libxdamage
libxdmcp
libxext
libxfixes
libxrender
libyaml
little-cms2
lz4
lzo
m4
mad
mbedtls
mesa
mpdecimal
mpfr
mpg123
mysql
nettle
node
npth
nspr
nss
numpy
open-mpi
openal-soft
openblas
opencore-amr
openexr
openjdk
openjpeg
openldap
[email protected]
openssl@3
openvino
opus
opusfile
p11-kit
p7zip
pandoc
pango
pcre
pcre2
pdf2svg
pinentry
pixman
pkg-config
pmix
poppler
protobuf@21
pugixml
py3cairo
pybind11
pyenv
python-packaging
python-setuptools
[email protected]
[email protected]
[email protected]
[email protected]
rav1e
readline
rubberband
scipy
sdl2
shared-mime-info
six
snappy
sox
speex
sqlite
srt
svt-av1
swig
tbb
tcl-tk
tesseract
theora
tree
unar
unbound
webp
x264
x265
xmlto
xorgproto
xsimd
xvid
xz
zeromq
zimg
zlib
zstd

==> Casks
inkscape
mactex
miniforge
rar

Also, could you try to change the following in pyproject.toml and tell me if this changes anything?

No.

@qgallouedec
Copy link
Member Author

Maybe related: StanfordVL/egl_probe#3

@aliberts
Copy link
Collaborator

aliberts commented Apr 29, 2024

Thank you for the additional info!

Maybe related: StanfordVL/egl_probe#3

Yes I stumbled upon it too looking this up. Not exactly the same error and plateform but pretty close, might be something there. Otherwise it looks like there's some build / compile library missing on your system. I'll have a look at your brew list and compare it with mine.

Out of curiosity, do you get the same error with poetry install --all-extras?

@aliberts aliberts added the 🐛 Bug Something isn't working label Apr 29, 2024
@Cadene
Copy link
Collaborator

Cadene commented May 2, 2024

@qgallouedec are you able to install?

@qgallouedec
Copy link
Member Author

No, but also because and torch 2.3.0 is not released yet for MacOS M1.

@asasarkaya
Copy link

I hit the same error when I was playing with the original ALOHA repo; the following fixed it for me;
sudo apt install build-essential. Then, try to install egl_probe again

@Cadene
Copy link
Collaborator

Cadene commented May 6, 2024

FYI the support of MacOS M1 is not really good as of now. Our pretrained models have been trained with CUDA. When we evaluate them on CPU and MPS, we sometimes get significant regressions.

@qgallouedec
Copy link
Member Author

I hit the same error when I was playing with the original ALOHA repo; the following fixed it for me; sudo apt install build-essential. Then, try to install egl_probe again

Thanks for sharing. It's probably the fix for Debian-based OS, but not for x86_64 Mac OS.

FYI the support of MacOS M1 is not really good as of now. Our pretrained models have been trained with CUDA. When we evaluate them on CPU and MPS, we sometimes get significant regressions.

I'd leave this issue open so that users are aware of the status of the support.

@hansku
Copy link

hansku commented May 7, 2024

I had the same error "ERROR: Failed building wheel for egl_probe"

Did brew install cmake then ran the install again pip install ".[aloha,zarm,pusht]" and it succeeded.

@DanielWang123321
Copy link

I just got the same error when install with "pip install . "
I did change requires = ["poetry-core=1.5.0"] to requires = ["poetry-core"] but got same result.
Attached the installation log.
Thanks

Windows10
Python 3.10.14

installation_log.txt

@MarcWebber
Copy link

I tried to install it by whl file, but it seemd "egl_probe" support linux only. I found whl here: https://www.piwheels.org/project/egl-probe/.

@Eirikalb
Copy link

Eirikalb commented May 9, 2024

For anyone wondering about windows you should probably start with install cmake and make. choco install brew is probably your best bet to fix it.

@markusheimerl
Copy link

Running into the same error on windows 11. I have cmake and make installed.

@mhandb
Copy link

mhandb commented May 15, 2024

I made a PR to fix this issue in egl_probe: StanfordVL/egl_probe#5
You can try it by installing it manually this way
pip install https://github.com/mhandb/egl_probe/archive/fix_windows_build.zip
It will install then, but we may face other issues on Windows I guess.

@mymingy
Copy link

mymingy commented May 16, 2024

I hit the same error when I was playing with the original ALOHA repo; the following fixed it for me; sudo apt install build-essential. Then, try to install egl_probe again

It works!

@aliberts aliberts linked a pull request May 23, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛 Bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.