当前位置: 首页 > news >正文

autoware.universe + cuda +cudnn +tensorrt

autoware常用命令

# 出错了不停止!继续编译后面所有包!colcon build --symlink-install --cmake-args-DCMAKE_BUILD_TYPE=Release --continue-on-error --packages-ignore bevdet_vendor autoware_path_optimizer autoware_cuda_pointcloud_preprocessor autoware_ground_segmentation_cuda autoware_trajectory_optimizer

查看详细编译日志(最完整)

colcon build --symlink-install\--cmake-args-DCMAKE_BUILD_TYPE=Release\--packages-select autoware_path_optimizer\--event-handlers console_cohesion+\--cmake-args-DCMAKE_VERBOSE_MAKEFILE=ON

把 acados 脚本的每一步都打印出来,你就能看到它到底在做什么,有没有报错

colcon build --symlink-install\--cmake-args-DCMAKE_BUILD_TYPE=Release\--packages-select autoware_path_optimizer\--event-handlers console_direct+
# 运行专用测试:在 Autoware 源码目录下,用 colcon test 单独跑 autoware_path_optimizer 包的测试colcontest--packages-select autoware_path_optimizer --event-handlers console_direct+
colcon build --symlink-install --cmake-args-DCMAKE_BUILD_TYPE=Release --continue-on-error --packages-ignore bevdet_vendor autoware_cuda_pointcloud_preprocessor autoware_ground_segmentation_cuda
cd~/autoware# 只删除这个包的编译缓存(不影响其他任何包)rm-rfbuild/autoware_path_optimizerrm-rfinstall/autoware_path_optimizer# 只编译它,纯标准命令colcon build --symlink-install\--cmake-args-DCMAKE_BUILD_TYPE=Release\--packages-select autoware_path_optimizer
# 启动autowarecdautowaresource~/autoware/install/setup.bash ros2 launch autoware_launch planning_simulator.launch.xml map_path:=$HOME/autoware_map/sample-map-planning vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit

根据电脑的cuda版本,修改官网的tensorrt安装命令
Manual Installation

# From the Autoware repository root:# defaults/main.yaml contains an architecture-dependent Jinja2 expression;# extract the matching version for this machine.if["$(uname-m)"="aarch64"];thentensorrt_version=$(grep-oP"'\K[^']+(?=' if)"ansible/roles/tensorrt/defaults/main.yaml)elsetensorrt_version=$(grep-oP"else '\K[^']+"ansible/roles/tensorrt/defaults/main.yaml)fi

Install TensorRT

sudoapt-getinstall-y\libnvinfer10=${tensorrt_version}\libnvinfer-plugin10=${tensorrt_version}\libnvonnxparsers10=${tensorrt_version}\libnvinfer-dev=${tensorrt_version}\libnvinfer-plugin-dev=${tensorrt_version}\libnvinfer-headers-dev=${tensorrt_version}\libnvinfer-headers-plugin-dev=${tensorrt_version}\libnvonnxparsers-dev=${tensorrt_version}sudoapt-mark hold\libnvinfer10\libnvinfer-plugin10\libnvonnxparsers10\libnvinfer-dev\libnvinfer-plugin-dev\libnvonnxparsers-dev\libnvinfer-headers-dev\libnvinfer-headers-plugin-dev

根据本机cuda版本,修改对应安装命令,如下

# ==============================# Autoware 1.8 + CUDA 11.8 专用 TensorRT# ==============================# 1. 彻底卸载所有错误/旧版本 TensorRTsudoaptremove-ylibnvinfer* libnvonnxparsers*sudoaptautoremove-ysudoaptclean# 2. 安装 AUTOWARE 1.8 正确版本sudoaptinstall-y\libnvinfer10=10.0.1.6-1+cuda11.8\libnvinfer-plugin10=10.0.1.6-1+cuda11.8\libnvonnxparsers10=10.0.1.6-1+cuda11.8\libnvinfer-dev=10.0.1.6-1+cuda11.8\libnvinfer-plugin-dev=10.0.1.6-1+cuda11.8\libnvinfer-headers-dev=10.0.1.6-1+cuda11.8\libnvinfer-headers-plugin-dev=10.0.1.6-1+cuda11.8\libnvonnxparsers-dev=10.0.1.6-1+cuda11.8# 3. 锁定版本,防止被系统更新改错sudoapt-mark hold\libnvinfer10\libnvinfer-plugin10\libnvonnxparsers10\libnvinfer-dev\libnvinfer-plugin-dev\libnvonnxparsers-dev\libnvinfer-headers-dev\libnvinfer-headers-plugin-dev# 4. 查看最终版本(确认是否成功)echo-e"\n===== 您当前的 TensorRT 版本 ====="dpkg-l|grepnvinfer

安装cudnn

# 安装正确 cuDNN 版本 (for CUDA 11.8)sudoaptinstall-ylibcudnn8=8.9.7.29-1+cuda11.8 libcudnn8-dev=8.9.7.29-1+cuda11.8# 锁定版本,防止被更新sudoapt-mark hold libcudnn8 libcudnn8-dev# 查看是否安装成功cat/usr/include/cudnn_version.h|grepCUDNN_MAJOR-A2
  1. 在你电脑(Windows/macOS)浏览器里下官方原版
    打开下面链接,直接保存文件(约 155MB):
    官方 egm2008-1.tar.bz2(和脚本下载完全一样)https://sourceforge.net/projects/geographiclib/files/geoids-distrib/egm2008-1.tar.bz2/download
    文件名:egm2008-1.tar.bz2
    大小:162,388,303 字节 ≈ 155MB
    必须是这个文件,不能改名。

acados安装的坑

我来一步一步带你清理 + 重新安装 acados,绝对不报错!你现在的问题就是:旧目录残留、路径乱了,我帮你全部重置干净。 跟着我复制执行 每一步(不要跳)bash运行# 1. 彻底删掉旧的 acados 目录cd~sudorm-rfacadossudorm-rf/opt/acados# 2. 重新克隆(干净版)gitclone https://github.com/acados/acados.gitcdacados# 3. 拉子模块gitsubmodule update--recursive--init# 4. 创建 build 并编译mkdirbuildcdbuild cmake-DACADOS_WITH_QPOASES=ON-DACADOS_WITH_HPIPM=ON-DBUILD_SHARED_LIBS=ON-DACADOS_INSTALL_DIR=/opt/acados..make-j$(nproc)sudomakeinstall5. 配置环境变量(必须)bash运行echo'export ACADOS_SOURCE_DIR="/opt/acados"'>>~/.bashrcecho'export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/acados/lib"'>>~/.bashrcecho'export PATH="$PATH:/opt/acados/bin"'>>~/.bashrcsource~/.bashrc6. 清理 path_optimizer 缓存bash运行cd~/autowarerm-rfbuild/autoware_path_optimizerrm-rfinstall/autoware_path_optimizer7. 最终编译(这次一定成功)bash运行 colcon build --symlink-install\--cmake-args-DCMAKE_BUILD_TYPE=Release\--packages-select autoware_path_optimizer

acados安装及软链接教程

第一个问题是建立python的软链接whichpython3sudomkdir-p/opt/acados/.venv/binsudoln-sf/usr/bin/python3 /opt/acados/.venv/bin/python3#然后再测试是否成功/opt/acados/.venv/bin/python3--version

现在直接给你终极真相——你现在遇到的,是所有 Autoware 用户都会踩的最大坑!
最核心结论(100% 确定)
link_libs.json 并不是通过普通编译 acados 自动生成的!
它是 Autoware 专用 acados 补丁 才会生成的文件!
原版 acados → 没有这个文件官方原版 acados → 永远不会生成 link_libs.json
真正的原因(99% 的人不知道)
Autoware 对 acados 做了内部修改他们在编译期间强行生成了这个 json 文件但原版 acados 根本没有这个功能!
所以:
你装 100 遍 acados
开 100 个 ACADOS_PYTHON=ON
编译 100 次
你永远得不到 /opt/acados/lib/link_libs.json
那这个文件到底哪来的?
只有两种方式会出现:
使用 Autoware 官方 ansible 安装脚本安装 acados
(他们自己打了补丁)
手动创建这个文件
(因为它只是一个库链接清单)
我现在直接给你 最正确、最彻底、不禁用、能永久解决 的方案
我直接给你创建这个缺失的文件!
这是唯一能让你编译通过的方法!
执行下面这一段(复制粘贴,直接生成),可以让autoware_path_optimizer正常编译,但不知道

sudobash-c'cat > /opt/acados/lib/link_libs.json'<<'EOF' [ "acados", "hpipm", "blasfeo", "qpOASES_e" ] EOF

至少最终Autoware是能跑的,注意,先点Stop,然后点Auto。

http://www.jsqmd.com/news/889134/

相关文章:

  • Unity 2022.3 + PICO 4真机调试与APK打包全链路排障指南
  • 去除文本 AI 痕迹有技巧,Claude 可识别多种问题并评分
  • 2026最新五家句容市黄金回收白银回收铂金回收彩金回收店铺靠谱回收门店推荐TOP5排行榜及联系方式推荐 - 前途无量YY
  • 2026最新五家建德市黄金回收白银回收铂金回收彩金回收店铺靠谱回收门店推荐TOP5排行榜及联系方式推荐 - 前途无量YY
  • 深入浅出 Pydantic:BaseModel 核心原理与实战指南
  • Linux多类型硬盘添加,分区,文件系统,挂载
  • 负数充值案例
  • 2026最新五家常宁市黄金回收白银回收铂金回收彩金回收店铺靠谱回收门店推荐TOP5排行榜及联系方式推荐 - 前途无量YY
  • 干货指南:专利注册服务的选购要点 - mypinpai
  • 如何用开源工具实现PNG转SVG的智能矢量化转换
  • 2026最新五家建瓯市黄金回收白银回收铂金回收彩金回收店铺靠谱回收门店推荐TOP5排行榜及联系方式推荐 - 前途无量YY
  • STM32 CAN扩展帧过滤器配置踩坑记:为什么我的0x04FB2028报文收不到?
  • 【初阶数据结构与算法】八大排序之非比较排序(计数排序),一次性讲清!
  • 三分钟掌握:如何用bili2text将B站视频快速转为文字稿
  • 不要错过这 10 个本周火火火的 GitHub 开源项目。
  • BetterNCM安装程序:一键解锁网易云音乐无限扩展功能
  • 如何快速掌握BepInEx:Unity游戏模组开发的终极完整指南
  • 有实力的首饰黄金回收公司口碑如何?价格贵不贵? - mypinpai
  • 杭州闲置名包变现攻略:5 家店价格对比 - 合扬奢侈品交易中心
  • 2026年5月19日博客精选
  • 终极指南:如何为你的Switch安装大气层系统并解锁完整功能
  • Pandas去重不是删重复行,而是对齐业务语义的数据清洗核心
  • 提示词组成工作流重构
  • 华为OD算法复习2——字符串
  • 5分钟学会Zotero Style插件:让你的文献管理体验焕然一新
  • OBS虚拟摄像头终极指南:3分钟让所有视频软件用上专业特效
  • PDCA闭环管理模式的核心原理与应用
  • 大模型聚合平台深度评测:阿里云百炼 vs 腾讯云ADP,企业如何选型?
  • 终极RimWorld模组管理实战:3步驯服500+模组依赖混乱
  • 【PI_COT电源稳定性】快速评估COT电源稳定性