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

    3.4.5 订阅数据并用Qt显示

    已定时 已固定 已锁定 已移动 未解决
    ROS2机器人开发:从入门到实践
    vscode提示错误 json文件
    3
    7
    371
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 3
      389445187
      最后由 编辑

      屏幕截图 2025-02-01 182636.png

      {
      "configurations":[
      {
      "name":"Linux",
      "includePath":[
      "${workspaceFolder}/",
      "/opt/ros/jazzy/include/
      ",
      "/usr/include/x86_64-linux-gnu/qt5/**"
      ],
      "defines":[],
      "compilerPath":"/usr/libexec/gcc",
      "cStandard":"c17",
      "cppStandard":"gnu++17",
      "intelliSenseMode":"linux-gcc-x64"
      }
      ],
      "version":3.8
      }
      书籍配套课程3.4.5,小鱼开头的json文件(修改环境变量,实现编写代码提示)
      修改了(1)includePath中humble为jazzy
      (2)compilerPath (原本为"/usr/bin/gcc")
      (3)version(原本为4)
      但编写代码时(1)导入依赖红色波浪线
      (2)编写代码时无提示
      请问各位佬要如何解决?(我在网上没找到相关解决方法)

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

        您遇到的问题可能涉及多个方面,包括环境配置、Qt库的使用、以及IDE(如Visual Studio Code)中的代码提示和错误检测。以下是一些可能的解决步骤和建议:

        1. 确认Qt版本和路径:

          • 确保您安装的Qt版本与您在includePath中指定的版本相匹配。从您的配置来看,您正在使用Qt5。如果系统中安装了多个Qt版本,确保您链接的是正确的版本。
          • 检查/usr/include/x86_64-linux-gnu/qt5/**路径是否正确,以及该路径下是否包含了Qt5的头文件。如果不确定,可以尝试在终端中运行ls /usr/include/x86_64-linux-gnu/qt5/来查看内容。
        2. 检查编译器路径:

          • 您已经将compilerPath修改为/usr/libexec/gcc。通常,GCC编译器的路径是/usr/bin/gcc。虽然/usr/libexec/gcc在某些系统中可能包含GCC的内部组件,但它通常不是直接用于编译的编译器路径。请尝试将其改回/usr/bin/gcc,或者确认/usr/libexec/gcc下确实包含了正确版本的GCC编译器。
        3. IDE设置:

          • 如果您使用的是Visual Studio Code,确保已安装C/C++扩展(由Microsoft提供),并且该扩展是最新版本。
          • 检查VS Code的设置,确保C_Cpp.default.compilerPath和C_Cpp.default.includePath设置正确。这些设置可以在VS Code的设置文件中手动配置,或通过UI界面配置。
        4. 代码提示和错误检测:

          • 如果导入依赖时出现红色波浪线,这通常意味着IDE无法找到相应的头文件或库。确保您的项目文件(如CMakeLists.txt或qmake项目文件)中正确设置了包含路径和链接库。
          • 如果编写代码时无提示,可能是因为IDE的IntelliSense功能未能正确加载。尝试重启VS Code,或重新加载工作区。
        5. 清理和重建项目:

          • 如果您使用的是构建系统(如CMake或qmake),尝试清理并重新构建项目。这可以清除旧的编译缓存,有时可以解决路径或依赖问题。
        6. 检查ROS版本:

          • 您提到将humble修改为jazzy。确保您的ROS环境确实安装的是jazzy版本,并且所有相关的路径和依赖都已正确设置。
        7. 查看IDE输出和日志:

          • 在VS Code中,查看“输出”面板和“问题”面板,可能会有关于编译或IntelliSense错误的更多信息。

        如果上述步骤仍然无法解决问题,您可能需要更详细地检查您的项目配置,或考虑在相关开发社区(如Stack Overflow、VS Code的GitHub仓库或ROS社区)寻求帮助。在寻求帮助时,提供尽可能详细的信息(如IDE版本、操作系统版本、Qt版本、ROS版本等)将有助于他人更快地诊断问题。


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

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

        3 1 条回复 最后回复 回复 引用 0
        • W
          wahaha
          最后由 编辑

          我也是这样,不过可以正常编译和运行

          W 3 2 条回复 最后回复 回复 引用 0
          • W
            wahaha @wahaha
            最后由 编辑

            @wahaha {
            "configurations": [
            {
            "name": "Linux",
            "includePath": [
            "${workspaceFolder}/",
            "/opt/ros/humble/include/
            "
            ],
            "defines": [],
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "c17",
            "cppStandard": "gnu++17",
            "intelliSenseMode": "linux-gcc-x64"
            }
            ],
            "version": 4
            }

            1 条回复 最后回复 回复 引用 0
            • 3
              389445187 @wahaha
              最后由 编辑

              @wahaha 我运行不了,构建的时候有问题
              3263bd0e-1c66-46d0-9c63-5ff82a1e7cd1-image.png
              3bb47fc1-4e42-45ac-91ea-741fd190c3e1-image.png
              (1)
              find_package(Qt5 REQUIRED COMPONENTS Widgets) # 添加依赖

              add_executable(hello_qt src/hello_qt.cpp) #设置可执行文件
              target_link_libraries(hello_qt Qt5::Widgets) #可执行文件依赖库

              add_executable(sys_status_display src/sys_status_display.cpp)
              target_link_libraries(sys_status_display Qt5::Widgets)
              ament_target_dependencies(sys_status_display rclcpp status_interfaces)

              (2)

              install(TARGETS hello_qt sys_status_display
              DESTINATION lib/${PROJECT_NAME})
              这些都是按小鱼在视频上写的

              3 1 条回复 最后回复 回复 引用 0
              • 3
                389445187 @389445187
                最后由 编辑

                现在这个问题解决了,但构建的时候又有其他报错

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

                  全都解决了,你3.3.1那节课看了吗,我像那节课一样修改cpp的includePath就可以了(把小鱼说的几个新路劲添加了上去
                  )

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