2025年7月2日 星期三

Gazebo 無法正常啟動

 綜合來看,主要的問題是 Gazebo 無法正常啟動,很可能與圖形渲染環境有關。


檢查圖形驅動和環境 (最可能的原因)

虛擬機用戶: 如果您在虛擬機 (如 VirtualBox, VMware) 中運行 Ubuntu,

請確保您安裝了訪客工具 (Guest Additions) 或虛擬機工具 (VMware Tools),

並且啟用或配置了 3D 加速。這是導致 gzclient 崩潰的常見原因。

雲端/無頭伺服器用戶: 如果您在沒有物理顯示器的雲端或無頭伺服器上運行,您需要配置一個虛擬顯示器環境。

安裝 mesa-utils 和 libgl1-mesa-glx:

[Bash]

sudo apt update

sudo apt install mesa-utils libgl1-mesa-glx


#安裝並使用 xvfb (X virtual framebuffer): 它可以提供一個虛擬顯示器,讓圖形應用程序在沒有實際顯示器的環境中運行。

[Bash]

sudo at install xvfb


# 啟動 XVFB

Xvfb :1 -screen 0 1024x768x24 &

export DISPLAY=:1


# 然後再嘗試啟動您的 Gazebo

ros2 launch roscar4wheel3 gazebo.launch.py


注意: 您需要在每次啟動新的終端會話時重新執行 export DISPLAY=:1。如果 XVFB 已經在運行,

再次執行 Xvfb 會失敗,您可以檢查它是否正在運行:

$ps aux | grep Xvfb。



#======================================================

重新安裝 Gazebo 和相關 ROS 2 套件

如果圖形環境不是問題,那麼 Gazebo 的安裝可能損壞了。嘗試重新安裝相關套件:

[Bash]

sudo apt update

sudo apt install --reinstall ros-humble-gazebo-*

sudo apt install --reinstall ros-humble-desktop-full # 如果您安裝的是桌面版

# 也可以嘗試重新編譯您的 roscar4wheel3 套件,以防有任何依賴問題

cd ~/data/ros2_ws3/

colcon build

source install/setup.bash


#========================================================

sudo apt update

sudo apt install xvfb # 如果尚未安裝

# 啟動 Xvfb 並設定 DISPLAY 環境變數

# 確保沒有其他 Xvfb 實例在運行,否則會衝突

Xvfb :1 -screen 0 1024x768x24 &

export DISPLAY=:1


# 然後在同一個終端或新的終端中(如果 Xvfb 在背景運行)

# 再次嘗試啟動 Gazebo

ros2 launch roscar4wheel3 gazebo.launch.py


沒有留言:

張貼留言