zllz0907 2023-01-18 15:20 采纳率: 0%
浏览 97

AGX下创建使用ROS docker后遇到rviz无法显示的问题

AGX下创建使用ROS docker后遇到rviz无法显示的问题,具体问题如下,猜想是与显卡驱动有关,但是如何解决尚没思路,大家有遇到过吗?
rviz::RenderSystem: error creating render window: OGRE EXCEPTION(3:RenderingAPIException): Unable to create a suitable GLXContext in GLXContext::GLXContext at /build/ogre-1.9-i02lBV/ogre-1.9-1.9.0+dfsg1/RenderSystems/GL/src/GLX/OgreGLXContext.cpp (line 61)

  • 写回答

2条回答 默认 最新

  • m0_54204465 2023-01-18 17:48
    关注

    这个问题可能是由于 AGX 系统中的显卡驱动不支持 OGRE 库导致的。OGRE 是一个用于渲染 3D 图形的库,而 rviz 是 ROS 中一个可视化工具,其中使用了 OGRE 库。

    一种解决办法是在 AGX 系统中安装支持 OGRE 的显卡驱动。另一种解决办法是在 Docker 中运行 ROS 时使用其他显卡驱动,例如 Nvidia 的显卡驱动。

    可以尝试在Docker中运行ROS时使用nvidia-docker,这样就可以在Docker中使用Nvidia的显卡驱动,而不需要在AGX系统中安装驱动。

    安装nvidia-docker的方法如下:

    # 安装nvidia-docker
    curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
      sudo apt-key add -
    distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
    curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
      sudo tee /etc/apt/sources.list.d/nvidia-docker.list
    sudo apt-get update
    
    # 安装nvidia-docker2
    sudo apt-get install -y nvidia-docker2
    
    #重启docker服务
    sudo systemctl restart docker
    
    
    #在运行ROS的docker容器时使用nvidia-docker,而不是普通的docker。
    sh
    nvidia-docker run -it --rm -p 11311:11311 -v /path/to/your/catkin_ws:/catkin_ws ros:kinetic-ros-base
    
    

    这样就可以在docker中使用Nvidia的显卡驱动了。

    如果仍然无法解决问题,可以尝试更新OGRE库,或者更换其他可视化工具。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 1月18日