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

    标题:使用一键安装过程中遇到程序崩溃

    已定时 已固定 已锁定 已移动
    一键安装
    ros2一键安装 一键安装
    6
    21
    1.5k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 1
      1219498550
      最后由 编辑

      Traceback (most recent call last):
      File "/tmp/fishinstall/install.py", line 133, in <module>
      main()
      File "/tmp/fishinstall/install.py", line 60, in main
      from tools.base import CmdTask,FileUtils,PrintUtils,ChooseTask,ChooseWithCategoriesTask,Tracking
      File "/tmp/fishinstall/tools/base.py", line 806, in <module>
      class PrintUtils():
      File "/tmp/fishinstall/tools/base.py", line 834, in PrintUtils
      def print_text(values: object="",end: str | None = "\n",flush= False):
      TypeError: unsupported operand type(s) for |: 'type' and 'NoneType'

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

        您遇到的错误是由于在 Python 的类型注解中使用了不支持的语法。具体来说,错误发生在尝试使用类型联合(type union)str | None,但这种语法在 Python 3.7 和更早的版本中是不被支持的。类型联合是 Python 3.10 引入的新特性,它允许在类型注解中指定多个可能的类型。

        从您的错误信息来看,您的环境可能运行在 Python 3.7 或更低版本,而您的代码或某个库可能是在更高版本的 Python 环境下编写的。

        解决方案

        1. 升级 Python 版本:
          如果您的项目允许,最简单的解决方案是升级 Python 到 3.10 或更高版本。这样可以直接使用 str | None 这样的类型注解。

        2. 修改类型注解:
          如果您不能升级 Python 版本,您需要将类型注解修改为旧版本 Python 支持的语法。在 Python 3.7 及更早版本中,您可以使用 typing 模块中的 Union 来实现类型联合:

          from typing import Union
          
          def print_text(values: Union[str, None] = "", end: str = "\n", flush: bool = False):
              # 函数实现
              pass
          

          修改 /tmp/fishinstall/tools/base.py 文件中的 PrintUtils 类中的 print_text 方法,将 str | None 替换为 Union[str, None]。

        3. 检查依赖库:
          如果这个一键安装脚本依赖于某个特定的库,而这个库在较新版本的 Python 上进行了更新,您可能需要查看该库的文档,了解如何在旧版本 Python 上使用它,或者查找是否有旧版本的库与您的 Python 版本兼容。

        4. 使用虚拟环境:
          为了避免系统 Python 版本的冲突,建议使用 Python 虚拟环境来管理项目依赖。这样,您可以在不同的项目中使用不同版本的 Python 和库。

        总结

        您遇到的错误是由于类型注解的语法与您的 Python 版本不兼容。根据项目的具体需求,您可以选择升级 Python 版本、修改代码以兼容旧版本 Python,或检查并更新项目依赖的库。


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

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

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

          一样,我也刚遇到

          小鱼小 2 条回复 最后回复 回复 引用 0
          • 小鱼小
            小鱼 技术大佬 @huang
            最后由 编辑

            @huang 稍等哈,正在修改

            新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

            1 条回复 最后回复 回复 引用 0
            • 小鱼小
              小鱼 技术大佬 @huang
              最后由 编辑

              @huang 请再测试一次,已经更新了

              新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

              1 1 条回复 最后回复 回复 引用 0
              • 1
                1219498550 @小鱼
                最后由 编辑

                @小鱼 已经解决了,yyds👍 ~

                1 条回复 最后回复 回复 引用 0
                • 11320324731
                  Liar.
                  最后由 编辑

                  我刚刚试过还是不行.

                  小鱼小 1 条回复 最后回复 回复 引用 0
                  • 小鱼小
                    小鱼 技术大佬 @1132032473
                    最后由 编辑

                    @1132032473 日志上传了吗,看一下什么错误

                    新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                    H 1 条回复 最后回复 回复 引用 0
                    • H
                      huang @小鱼
                      最后由 编辑

                      @小鱼
                      hjs@DESKTOP-JA29B8Q:/home$ rosrun turtlesim turtlesim_node
                      qt.qpa.xcb: could not connect to display
                      qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
                      This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

                      Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.

                      Aborted
                      hjs@DESKTOP-JA29B8Q:/home$可以安装,但海龟模拟器无法启动

                      小鱼小 ganyuanzhenG 2 条回复 最后回复 回复 引用 0
                      • 小鱼小
                        小鱼 技术大佬 @huang
                        最后由 编辑

                        @huang https://fishros.org.cn/forum/topic/151/提问前必看-不符合要求的问题拒绝回答

                        新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                        1 条回复 最后回复 回复 引用 0
                        • ganyuanzhenG
                          Elysia 技术大佬 @huang
                          最后由 编辑

                          @huang 在 标题:使用一键安装过程中遇到程序崩溃 中说:

                          rosrun turtlesim turtlesim_node

                          看看是Wayland环境吗?如果是的话切换成Xorg或者X11再试一下

                          我难道就没有一段英勇,美好而又虚幻的过去……幸运地写在金叶片上?

                          H 1 条回复 最后回复 回复 引用 0
                          • H
                            huang @ganyuanzhen
                            最后由 编辑

                            @ganyuanzhen 我是win10的wsl下的ubuntu20.04,一键安装的ros1(noetic),roscore可以启动,然后就是海龟无法启动1939fa2a-f6d0-438f-b213-2845eacceb7a-image.png
                            我自己编写一个发布者节点可以编译运行,海龟不能,应该是缺少图像化界面的原因,要安装什么吗

                            ganyuanzhenG 1 条回复 最后回复 回复 引用 0
                            • ganyuanzhenG
                              Elysia 技术大佬 @huang
                              最后由 编辑

                              @huang 在 标题:使用一键安装过程中遇到程序崩溃 中说:

                              @ganyuanzhen 我是win10的wsl下的ubuntu20.04,一键安装的ros1(noetic),roscore可以启动,然后就是海龟无法启动1939fa2a-f6d0-438f-b213-2845eacceb7a-image.png
                              我自己编写一个发布者节点可以编译运行,海龟不能,应该是缺少图像化界面的原因,要安装什么吗

                              Windows 10 的WSL要使用图形界面的话,对系统的版本有一定的要求。

                              需要使用 Windows 10 版本 19044+ 或 Windows 11 才能使用此功能。并且得用WSL2而不是WSL1

                              如果你的环境符合要求,用 wsl --update 升级WSL2环境,重启WSL后再重试。

                              如果环境不符合,只有升级系统或者使用虚拟机的方式安装

                              我难道就没有一段英勇,美好而又虚幻的过去……幸运地写在金叶片上?

                              H 1 条回复 最后回复 回复 引用 0
                              • H
                                huang @ganyuanzhen
                                最后由 编辑

                                @ganyuanzhen 94f9bbed-4563-4774-abdd-6a14ace7b0c8-image.png
                                36d4ce51-9542-477c-bda0-00bf22b8cb01-image.png
                                版本应该也符合

                                ganyuanzhenG 1 条回复 最后回复 回复 引用 0
                                • ganyuanzhenG
                                  Elysia 技术大佬 @huang
                                  最后由 编辑

                                  @huang 在 标题:使用一键安装过程中遇到程序崩溃 中说:

                                  @ganyuanzhen 94f9bbed-4563-4774-abdd-6a14ace7b0c8-image.png
                                  36d4ce51-9542-477c-bda0-00bf22b8cb01-image.png
                                  版本应该也符合

                                  升级一下,wsl --update

                                  我难道就没有一段英勇,美好而又虚幻的过去……幸运地写在金叶片上?

                                  H 1 条回复 最后回复 回复 引用 0
                                  • H
                                    huang @ganyuanzhen
                                    最后由 编辑

                                    @ganyuanzhen 在 标题:使用一键安装过程中遇到程序崩溃 中说:

                                    wsl --update
                                    06f427b1-97e7-46aa-bb59-0d08fa5fa351-image.png
                                    更新之后重启了
                                    wsl --shutdown
                                    还是无法启动😢

                                    H 1 条回复 最后回复 回复 引用 0
                                    • H
                                      huang @huang
                                      最后由 编辑

                                      @huang 26d090dc-88d5-4058-8c94-ec9afea55401-image.png

                                      ganyuanzhenG 1 条回复 最后回复 回复 引用 0
                                      • ganyuanzhenG
                                        Elysia 技术大佬 @huang
                                        最后由 编辑

                                        @huang 在 标题:使用一键安装过程中遇到程序崩溃 中说:

                                        @huang 26d090dc-88d5-4058-8c94-ec9afea55401-image.png

                                        手动更新一下https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

                                        我难道就没有一段英勇,美好而又虚幻的过去……幸运地写在金叶片上?

                                        H 1 条回复 最后回复 回复 引用 0
                                        • H
                                          huang @ganyuanzhen
                                          最后由 编辑

                                          @ganyuanzhen 在 标题:使用一键安装过程中遇到程序崩溃 中说:

                                          手动更新一下https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

                                          dcf74739-11dc-45da-8410-713eff2eb0fd-image.png
                                          4f04a387-ea0b-4ac6-a654-7aff6ebb5581-image.png
                                          已经是最新的了

                                          ganyuanzhenG 1 条回复 最后回复 回复 引用 0
                                          • ganyuanzhenG
                                            Elysia 技术大佬 @huang
                                            最后由 编辑

                                            @huang 在 标题:使用一键安装过程中遇到程序崩溃 中说:

                                            @ganyuanzhen 在 标题:使用一键安装过程中遇到程序崩溃 中说:

                                            手动更新一下https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

                                            dcf74739-11dc-45da-8410-713eff2eb0fd-image.png
                                            4f04a387-ea0b-4ac6-a654-7aff6ebb5581-image.png
                                            已经是最新的了

                                            没遇到过了,https://github.com/microsoft/wslg,只能看看有没有其他和你一样情况的了

                                            我难道就没有一段英勇,美好而又虚幻的过去……幸运地写在金叶片上?

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