鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    rosdepc初始化失败

    已定时 已固定 已锁定 已移动 未解决
    动手学ROS2
    ubundu24.04 rosdepc初始化 ros2
    2
    4
    379
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 2
      2782005346
      最后由 编辑

      本人为ros2系统纯种小白(系统为ubuntu24.04),在配置工作空间过程中遇到了以下问题:
      在成功利用pipx安装rosdep后,始终无法对rosdep进行初始化,切换多种网络都还是会遇到
      $ sudo rosdepc init
      ERROR: cannot download default sources list from:
      https://mirrors.tuna.tsinghua.edu.cn/github-raw/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
      Website may be down.
      <urlopen error HTTP Error 403: Forbidden (https://mirrors.tuna.tsinghua.edu.cn/github-raw/ros/rosdistro/master/rosdep/sources.list.d/20-default.list)>
      的报错情况。
      顺着链接打开网页后,清华源显示:“我们检测到您所在的子网和/或所使用的客户端存在大量下载某些较大二进制文件的行为,为保证用户的正常使用,我们阻断了此类请求。”
      请问这种问题应该如何解决?
      PS:真的快绝望了TAT用鱼香的一键安装也安装不了,求求大佬帮助!
      #ubuntu24.04
      #rosdepc init

      1 条回复 最后回复 回复 引用 0
      • 小伊小
        机器人小伊
        最后由 编辑

        遇到 rosdep 初始化失败的问题,尤其是由于网络或镜像源问题导致的,可以尝试以下几种方法来解决:

        1. 切换 rosdep 的默认源

        由于清华的镜像源可能暂时不可用或者对您的网络地址进行了限制,您可以尝试切换到其他的镜像源,比如官方的源或者其他可靠的镜像源。

        使用官方源

        1. 首先,确保 rosdep 已经正确安装。

        2. 清除当前的 sources.list 文件(如果存在):

          sudo rm -rf /etc/ros/rosdep/sources.list.d/*
          
        3. 使用官方源重新初始化 rosdep:

          sudo rosdep init --rosdistro foxy -y
          

          注意:这里使用的是 foxy 发行版作为例子,您应该根据您的 ROS 2 发行版(如 humble)替换 foxy。

        4. 更新 rosdep 数据库:

          rosdep update
          

        使用其他镜像源

        如果您想尝试其他镜像源,比如 USTC(中国科学技术大学)的镜像,可以在初始化时指定不同的 URL。例如:

        sudo ROSDEP_SOURCE_URL=http://mirrors.ustc.edu.cn/ros/rosdep/sources.list.d/20-default.list rosdep init
        rosdep update
        

        2. 检查网络设置

        • 确保您的网络连接没有问题,且没有被防火墙或代理服务器限制。
        • 如果您在使用 VPN 或代理,尝试暂时关闭它们,看看是否可以正常访问。

        3. 手动下载并设置 sources.list

        如果上述方法都不可行,您可以尝试手动下载 sources.list 文件并放置到正确的位置。

        1. 手动访问 ROS Distro GitHub 页面 并下载 20-default.list 文件。
        2. 将下载的文件复制到 /etc/ros/rosdep/sources.list.d/ 目录下。
        3. 运行 rosdep update。

        4. 检查 ROS 2 安装和配置

        • 确保您按照 ROS 2 的官方文档正确安装了所有依赖和工具。
        • 检查是否有其他配置错误或遗漏的步骤。

        5. 使用 Docker 或虚拟机

        如果上述所有方法都不可行,考虑使用 Docker 或虚拟机来运行 ROS 2,这样可以避免很多与本地环境相关的问题。

        希望这些方法能帮助您解决问题!如果还有其他疑问或问题,欢迎继续提问。


        以上为生成回答,仅供参考~

        我是小伊,已接入ChatGpt,所有回复,仅供参考~

        2 1 条回复 最后回复 回复 引用 0
        • 2
          2782005346 @小伊
          最后由 编辑

          @小伊
          在这一行sudo rosdep init --rosdistro foxy -y指令的时候出现了

          $ sudo rosdep init --rosdistro jazzy -y
          ERROR: cannot download default sources list from:
          https://mirrors.tuna.tsinghua.edu.cn/github-raw/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
          Website may be down.
          <urlopen error HTTP Error 403: Forbidden (https://mirrors.tuna.tsinghua.edu.cn/github-raw/ros/rosdistro/master/rosdep/sources.list.d/20-default.list)>
          

          的情况,应该如何解决?

          1 条回复 最后回复 回复 引用 0
          • 小伊小
            机器人小伊
            最后由 编辑

            当你在使用 rosdep init 命令初始化 ROS 的依赖管理时遇到 HTTP Error 403: Forbidden 错误,这通常意味着你尝试访问的服务器拒绝了你的请求。这个问题可能由几个原因引起,包括网络配置问题、服务器访问限制或 URL 地址错误。针对你遇到的问题,这里有几个可能的解决方案:

            1. 检查 ROS 发行版名称:
              你的命令中使用了 --rosdistro jazzy,但 ROS Foxy 之后的发行版是 Galactic 和 Humble,而不是 Jazzy。请确保你使用的发行版名称是正确的。如果你正在使用 ROS Foxy,命令应该是:

              sudo rosdep init --rosdistro foxy -y
              
            2. 更换 ROSDEP 源:
              由于你尝试访问的 Tsinghua 镜像可能存在问题(如访问限制或镜像未更新),你可以尝试更换到其他镜像或直接使用官方的 GitHub 源。你可以通过修改 rosdep 的配置文件来更改源。首先,初始化 rosdep 但不使用任何特定的源列表(这将使用默认的 GitHub 源):

              ROSDEP_SOURCE_URL=https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list sudo rosdep init
              sudo rosdep update
              

              如果你希望继续使用国内的镜像,可以尝试更换到其他可用的镜像,例如 USTC(中国科学技术大学)的镜像:

              sudo sh -c 'echo "sources: [
                {
                  "filesets": [
                    "eoe-os/depends",
                    "gbpbuilder/ros-release"
                  ],
                  "local-name": "eoe",
                  "type": "deb",
                  "uri": "http://mirrors.ustc.edu.cn/ros/ubuntu/"
                },
                {
                  "default-branches": {
                    "ros1-noetic": "release/noetic",
                    "ros2-foxy": "release/foxy",
                    "ros2-galactic": "release/galactic"
                  },
                  "development-branches": {},
                  "distribution-file": "rosdistro/index-v4.yaml",
                  "distribution-file-url": "https://mirrors.ustc.edu.cn/rosdistro/index-v4.yaml",
                  "distribution-name": "ros",
                  "doc-host": "https://mirrors.ustc.edu.cn/ros2/doc/",
                  "release-repository-url": "https://mirrors.ustc.edu.cn/github-release/",
                  "type": "git",
                  "uri": "https://mirrors.ustc.edu.cn/github.com/ros/"
                },
                {
                  "default-branches": {},
                  "distribution-file": "",
                  "distribution-name": "",
                  "type": "website",
                  "uri": "https://mirrors.ustc.edu.cn/roswiki/"
                }
              ]" > /etc/ros/rosdep/sources.list.d/20-default.list'
              sudo rosdep update
              
            3. 检查网络连接:
              确保你的网络连接没有问题,并且没有任何防火墙或代理设置阻止了对外部服务器的访问。

            4. 使用 VPN 或代理:
              如果你在中国大陆,并且访问 GitHub 或其他国外服务器受限,尝试使用 VPN 或配置代理来访问这些资源。

            尝试上述解决方案之一,看看是否能解决你的问题。如果问题仍然存在,可能需要进一步检查你的网络设置或联系镜像服务器的管理员。


            以上为生成回答,仅供参考~

            我是小伊,已接入ChatGpt,所有回复,仅供参考~

            1 条回复 最后回复 回复 引用 0
            • 第一个帖子
              最后一个帖子
            皖ICP备16016415号-7
            Powered by NodeBB | 鱼香ROS