You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ROS中使用catkin build构建时抑制弃用警告?

在ROS中设置CMAKE_WARN_DEPRECATED以抑制弃用警告
  • 单个ROS包生效
    直接在目标包的CMakeLists.txt里添加设置,建议放在project()指令前后:

    set(CMAKE_WARN_DEPRECATED OFF)
    

    注意:这种方式只对当前包的代码生效,依赖包(比如Googletest、catkin_tools_prebuild)的警告不会被屏蔽。

  • 临时全局生效(单次构建)
    每次执行catkin build时带上参数,对所有构建的包(包括依赖)生效:

    catkin build -DCMAKE_WARN_DEPRECATED=OFF
    
  • 永久全局生效
    修改catkin_tools的全局配置文件,默认路径是~/.catkin_tools/profiles/default/config.yaml,在文件中添加:

    cmake_args:
      - -DCMAKE_WARN_DEPRECATED=OFF
    

    保存后,后续所有catkin build都会自动应用这个配置,无需每次手动加参数。

  • 仅抑制特定依赖的警告
    如果只想屏蔽Googletest这类依赖的警告,同时保留自己代码的警告,可以在CMakeLists.txt里这么写:

    # 先关闭警告
    set(CMAKE_WARN_DEPRECATED OFF)
    # 查找依赖
    find_package(GTest REQUIRED)
    # 恢复当前包的弃用警告(可选操作)
    set(CMAKE_WARN_DEPRECATED ON)
    

内容的提问来源于stack exchange,提问作者Scotrraaj Gopal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 10:22:38