ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Apollo自动驾驶平台安装指南与常见问题解决

Apollo自动驾驶平台安装指南与常见问题解决 1. Apollo平台安装全流程解析作为百度开源的自动驾驶开发平台Apollo的安装过程确实存在不少坑。我在实际部署过程中发现90%的问题都集中在环境准备和依赖项配置阶段。不同于普通软件的一键安装Apollo对系统环境有着严格的要求这也是许多开发者首次接触时容易踩雷的地方。2. 环境准备阶段的关键要点2.1 系统版本选择与验证Apollo官方推荐使用Ubuntu 18.04 LTS版本这是经过充分测试的稳定组合。我在实际测试中发现即使使用Ubuntu 20.04也会遇到各种兼容性问题。建议通过以下命令确认系统版本lsb_release -a重要提示不要尝试在Windows子系统(WSL)中安装Apollo这会导致后续GPU驱动和Docker兼容性问题。2.2 硬件需求检查Apollo对硬件有较高要求特别是GPU支持。建议至少准备NVIDIA显卡GTX 1080及以上16GB以上内存100GB可用磁盘空间验证GPU驱动是否正常nvidia-smi如果显示No devices were found说明需要重新安装驱动。3. 依赖项安装的常见问题3.1 Docker安装与配置Apollo强烈依赖Docker环境但官方文档中的安装命令可能需要调整# 替代官方提供的安装命令 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository deb [archamd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io安装后务必执行sudo usermod -aG docker $USER然后注销重新登录否则会遇到权限问题。3.2 CUDA和cuDNN的版本匹配这是最容易出错的环节之一。Apollo 6.0需要CUDA 10.2cuDNN 7.6.5版本不匹配会导致编译失败。验证CUDA版本nvcc --version4. Apollo源码获取与编译4.1 源码下载注意事项建议使用国内镜像加速下载git clone https://gitee.com/ApolloAuto/apollo.git cd apollo git checkout v6.0.0 # 指定稳定版本常见问题直接使用GitHub源可能下载速度极慢甚至中断。4.2 编译过程中的典型错误首次编译建议使用./apollo.sh build可能遇到的错误及解决方案Protobuf版本冲突删除系统原有protobufsudo apt-get remove libprotobuf-devEigen3 not found手动指定Eigen路径sudo ln -s /usr/include/eigen3/Eigen /usr/include/EigenGPU support disabled检查docker容器内nvidia-smi是否可用5. 容器环境配置技巧5.1 容器内网络配置由于国内网络环境需要修改容器内的apt源docker exec -it apollo_dev bash sed -i s/archive.ubuntu.com/mirrors.aliyun.com/g /etc/apt/sources.list apt update5.2 持久化数据存储默认情况下容器停止后数据会丢失。建议将重要数据挂载到宿主机docker run -it --name apollo_dev \ -v /path/on/host:/apollo/data \ apolloauto/apollo:dev-x86_64-18.04-latest6. 模拟环境搭建实战6.1 Dreamview启动问题排查启动Dreamview后无法访问localhost:8888检查容器端口是否正确映射防火墙是否阻止访问容器内服务是否正常启动6.2 激光雷达模拟数据注入测试激光雷达模块时可以使用官方提供的测试包cyber_recorder play -f docs/demo_guide/demo.bag -l7. 性能优化建议7.1 编译参数调整对于性能较弱的机器可以修改编译选项export USE_GPU0 # 禁用GPU加速 ./apollo.sh build --local_resources 2048,1.0,1.0 # 限制资源使用7.2 容器资源分配适当限制容器资源可以防止系统卡死docker update --memory 8G --memory-swap 10G apollo_dev8. 版本升级注意事项从Apollo 5.0升级到6.0时特别注意配置文件格式变化新引入的Cyber RT框架传感器接口变更建议先备份原有工程tar -czvf apollo5_backup.tar.gz /apollo9. 开发环境维护技巧9.1 日常清理策略定期执行以下命令释放空间docker system prune ./apollo.sh clean9.2 多版本共存方案如果需要同时维护多个Apollo版本可以使用不同容器docker run -it --name apollo_5.0 -v $(pwd):/apollo apolloauto/apollo:5.0 docker run -it --name apollo_6.0 -v $(pwd):/apollo apolloauto/apollo:6.010. 社区资源利用遇到问题时建议按以下顺序查找解决方案Apollo官方GitHub IssuesApollo中文社区论坛百度开发者中心提交issue时应包含系统环境信息完整错误日志已尝试的解决方案我在实际项目中发现90%的问题都能在社区找到答案。保持耐心仔细阅读错误信息大多数坑都有成熟的解决方案。最后提醒Apollo的安装过程确实复杂但一旦环境配置正确后续开发会顺利很多。建议做好详细的安装记录这对团队协作和后续维护都很有帮助。
返回列表