isaac-sim / IsaacLab

Unified framework for robot learning built on NVIDIA Isaac Sim
https://isaac-sim.github.io/IsaacLab
Other
1.99k stars 794 forks source link

[Bug Report] ModuleNotFoundError: No module named 'omni.kit.usd' #487

Closed supersglzc closed 3 months ago

supersglzc commented 3 months ago
Traceback (most recent call last):
  File "/home/supersglzc/code/IsaacLab/source/standalone/demos/quadrupeds.py", line 30, in <module>
    app_launcher = AppLauncher(args_cli)
  File "/home/supersglzc/code/IsaacLab/source/extensions/omni.isaac.lab/omni/isaac/lab/app/app_launcher.py", line 117, in __init__
    self._create_app()
  File "/home/supersglzc/code/IsaacLab/source/extensions/omni.isaac.lab/omni/isaac/lab/app/app_launcher.py", line 536, in _create_app
    self._app = SimulationApp(self._sim_app_config, experience=self._sim_experience_file)
  File "/home/supersglzc/Isaac/isaac-sim-2023.1.1/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py", line 195, in __init__
    from .utils import create_new_stage, open_stage, set_livesync_stage
  File "/home/supersglzc/Isaac/isaac-sim-2023.1.1/exts/omni.isaac.kit/omni/isaac/kit/utils.py", line 17, in <module>
    from omni.kit.usd import layers
ModuleNotFoundError: No module named 'omni.kit.usd'

Hi, I have verified that my IsaacSim installation is correct. When I tried to run the verification for Isaac lab, it gives me this error.

I saw some comments suggesting that it may due to the Nucleus, but I checked that my Nucleus is connected.

Dhoeller19 commented 3 months ago

Hi @supersglzc, We recommend updating to IsaacSim 4.0.0.

If you want to keep using 2023.1.1, you have to use the backwards compatible experience file here. You can activate it by giving the path to that file as command line input with --experience=...

jbt-cmu commented 3 months ago

How exactly do I update to this version of IsaacSim?

Thanks!

jtigue-bdai commented 3 months ago

To install Isaac Sim 4.0.0 search for it in the Omniverse Launcher Exchange Apps. You will find two Isaac Sim apps that show up. Find the one that has 4.0.0 as the version. 4.0.0 will not show as an upgrade option in the Isaac Sim 2023.1.1 version of the app that is already installed.

There is also the experimental pip install method.

MasterYip commented 3 months ago

To install Isaac Sim 4.0.0 search for it in the Omniverse Launcher Exchange Apps. You will find two Isaac Sim apps that show up. Find the one that has 4.0.0 as the version. 4.0.0 will not show as an upgrade option in the Isaac Sim 2023.1.1 version of the app that is already installed.

There is also the experimental pip install method.

Hello, unfortunately I meet with this problem using the Isaac Sim 2023.1.1 which tagged with 4.0.0 version too. This is the version I have selected to install (from binary). image It passes installation verification but stucks here.

2024-06-17 06:09:59 [8,498ms] [Error] [omni.ext.plugin] Failed to resolve extension dependencies. Failure hints:
    [isaaclab.python-1.0.0] dependency: (name: 'omni.isaac.menu', tag: '', version: '', exact: 0, optional: 0) can't be satisfied. Available versions:
     (none found)

2024-06-17 06:09:59 [8,498ms] [Error] [omni.kit.app.plugin] Exiting app because of dependency solver failure...
Traceback (most recent call last):
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/source/standalone/tutorials/00_sim/create_empty.py", line 29, in <module>
    app_launcher = AppLauncher(args_cli)
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/source/extensions/omni.isaac.lab/omni/isaac/lab/app/app_launcher.py", line 117, in __init__
    self._create_app()
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/source/extensions/omni.isaac.lab/omni/isaac/lab/app/app_launcher.py", line 536, in _create_app
    self._app = SimulationApp(self._sim_app_config, experience=self._sim_experience_file)
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/_isaac_sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py", line 195, in __init__
    from .utils import create_new_stage, open_stage, set_livesync_stage
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/_isaac_sim/exts/omni.isaac.kit/omni/isaac/kit/utils.py", line 17, in <module>
    from omni.kit.usd import layers
ModuleNotFoundError: No module named 'omni.kit.usd'

And indeed, I cannot find the python package omni.kit.usd in isaacsim installation directory. image

To solve this problem, I have tried to install omniverse kit and source its setup bash, however, it seems the version of libgf.so is incorrect.

The Kit version is 105.1.2: image

source ~/.local/share/ov/pkg/kit-105.1.2/setup_python_env.sh
2024-06-17 06:27:46 [7,280ms] [Error] [omni.ext.plugin] Failed to resolve extension dependencies. Failure hints:
    [isaaclab.python-1.0.0] dependency: (name: 'omni.isaac.menu', tag: '', version: '', exact: 0, optional: 0) can't be satisfied. Available versions:
     (none found)

2024-06-17 06:27:46 [7,280ms] [Error] [omni.kit.app.plugin] Exiting app because of dependency solver failure...
Traceback (most recent call last):
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/source/standalone/tutorials/00_sim/create_empty.py", line 29, in <module>
    app_launcher = AppLauncher(args_cli)
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/source/extensions/omni.isaac.lab/omni/isaac/lab/app/app_launcher.py", line 117, in __init__
    self._create_app()
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/source/extensions/omni.isaac.lab/omni/isaac/lab/app/app_launcher.py", line 536, in _create_app
    self._app = SimulationApp(self._sim_app_config, experience=self._sim_experience_file)
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/_isaac_sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py", line 195, in __init__
    from .utils import create_new_stage, open_stage, set_livesync_stage
  File "/home/raymon/Documents/CodeSpace/IssacSim/IsaacLab/_isaac_sim/exts/omni.isaac.kit/omni/isaac/kit/utils.py", line 17, in <module>
    from omni.kit.usd import layers
  File "/home/raymon/.local/share/ov/pkg/kit-105.1.2/exts/omni.kit.usd.layers/omni/kit/usd/layers/__init__.py", line 1, in <module>
    from .impl import *
  File "/home/raymon/.local/share/ov/pkg/kit-105.1.2/exts/omni.kit.usd.layers/omni/kit/usd/layers/impl/__init__.py", line 1, in <module>
    from .extension import (
  File "/home/raymon/.local/share/ov/pkg/kit-105.1.2/exts/omni.kit.usd.layers/omni/kit/usd/layers/impl/extension.py", line 3, in <module>
    import omni.usd
  File "/home/raymon/.local/share/ov/pkg/kit-105.1.2/exts/omni.usd/omni/usd/__init__.py", line 1, in <module>
    from ._impl import *
  File "/home/raymon/.local/share/ov/pkg/kit-105.1.2/exts/omni.usd/omni/usd/_impl/__init__.py", line 2, in <module>
    from .._usd import *
ImportError: /home/raymon/.local/share/ov/pkg/kit-105.1.2/exts/omni.usd.libs/bin/libgf.so: undefined symbol: _ZN32pxrInternal_v0_22__pxrReserved__11TfMallocTag10_doTaggingE
MasterYip commented 3 months ago

To install Isaac Sim 4.0.0 search for it in the Omniverse Launcher Exchange Apps. You will find two Isaac Sim apps that show up. Find the one that has 4.0.0 as the version. 4.0.0 will not show as an upgrade option in the Isaac Sim 2023.1.1 version of the app that is already installed.

There is also the experimental pip install method.

Thanks for the solution! It is a little bit tricky to install the according version for it is folded in the All releases builds option image

KevinGrey commented 1 month ago

Hi there, I solve this bug by changing my code like this: before:

from isaacsim import SimulationApp  
simulation_app = SimulationApp({"headless": False})

alter:

from omni.isaac.lab.app import AppLauncher
import argparse
parser = argparse.ArgumentParser(description="This script demonstrates different dexterous hands.")
AppLauncher.add_app_launcher_args(parser)
args_cli = parser.parse_args()
app_launcher = AppLauncher(args_cli)
simulation_app = app_launcher.app