diff --git a/setup/install_ubuntu.sh b/setup/install_ubuntu.sh index 17c588a..4f0fc6f 100755 --- a/setup/install_ubuntu.sh +++ b/setup/install_ubuntu.sh @@ -151,13 +151,44 @@ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/pkgs- sudo apt-get update # Install Gazebo Harmonic (preferred) or Garden as fallback -sudo apt-get install -y gz-harmonic || sudo apt-get install -y gz-garden || { +if sudo apt-get install -y gz-harmonic; then + GZ_VERSION="harmonic" + # Install Harmonic development packages for building plugins + sudo apt-get install -y \ + libgz-cmake3-dev \ + libgz-sim8-dev \ + libgz-plugin2-dev \ + libgz-common5-dev \ + libgz-physics7-dev \ + libgz-sensors8-dev \ + libgz-rendering8-dev \ + libgz-transport13-dev \ + libgz-msgs10-dev \ + rapidjson-dev \ + 2>/dev/null || echo "[WARN] Some Gazebo dev packages may be missing" +elif sudo apt-get install -y gz-garden; then + GZ_VERSION="garden" + # Install Garden development packages + sudo apt-get install -y \ + libgz-cmake3-dev \ + libgz-sim7-dev \ + libgz-plugin2-dev \ + libgz-common5-dev \ + libgz-physics6-dev \ + libgz-sensors7-dev \ + libgz-rendering7-dev \ + libgz-transport12-dev \ + libgz-msgs9-dev \ + rapidjson-dev \ + 2>/dev/null || echo "[WARN] Some Gazebo dev packages may be missing" +else + GZ_VERSION="none" echo "[WARN] Could not install Gazebo Harmonic/Garden" -} +fi # Verify installation if command -v gz &> /dev/null; then - echo "[OK] Gazebo installed ($(gz sim --version 2>/dev/null | head -1 || echo 'version unknown'))" + echo "[OK] Gazebo $GZ_VERSION installed ($(gz sim --version 2>/dev/null | head -1 || echo 'version unknown'))" else echo "[WARN] Gazebo command not found" fi