Rerun 开发环境完整指南:5 个检查点,从源码编译到多语言 SDK 全部跑通
【免费下载链接】rerunVisualize, query, and stream to train on multimodal robotics data.项目地址: https://gitcode.com/GitHub_Trending/re/rerun
在 Linux、macOS 和 Windows 上,按下面 5 个检查点依次推进,你就能完成 Rerun 的开发环境搭建:源码编译出 Viewer 并看到 3D 点云,Python / Rust / C++ 三套 SDK 全部可用。每个检查点都有明确的"完成标志",卡住了直接跳到文末速查表。
检查点 1:工具链就位——Rust 1.96.0 与 Pixi 0.71.3
Rerun 用 pixi 统一管理开发依赖,任务定义全部集中在仓库根目录的 pixi.toml 中。你只需要装好两样东西:Rust 工具链(仓库锁定版本1.96.0,见rust-toolchain)和Pixi 0.71.3(pixi.toml中requires-pixi声明的最低版本,scripts/check_env.py 会精确校验这两个版本)。
| 平台 | 系统基线 | 需要额外准备的工具 |
|---|---|---|
| Linux | glibc 2.28+(如 Ubuntu 20.04+) | build-essential、git、git-lfs |
| macOS | macOS 11+,Xcode 命令行工具 | git、git-lfs |
| Windows | Windows 10+,Visual Studio 2022 + Windows SDK | git(勾选 symbolic links)、git-lfs |
三个平台走同一条流程,只有安装方式不同:
# 1. 安装 Rust(rustup 官网脚本) curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y # 2. 锁定仓库要求的版本 rustup install 1.96.0 && rustup default 1.96.0 # 3. 安装 Pixi 并升到校验版本 curl -fsSL https://pixi.sh/install.sh | bash pixi self-update --version 0.71.3macOS 用户可用 Homebrew 替代包管理器安装 git 系工具;Windows 用户改用图形安装器,并在 VS 开发者命令行中执行后续编译命令。
git clone https://gitcode.com/GitHub_Trending/re/rerun cd rerun pixi run check-envcheck-env会依次打印 pixi / cargo / rustc 三项版本是否匹配,看到三行... is correct即通过。
完成标志:pixi run check-env三项全部输出 "is correct"。
检查点 2:源码编译 Viewer,第一次看到 3D 点云
环境就绪后,第一条真正的编译命令是:
pixi run rerun这个任务等价于cargo run --package rerun-cli --no-default-features --features release_no_web_viewer,产物落在target/debug/rerun。首次编译依赖量大、耗时较长,终端滚完最后一行Finished后 Viewer 窗口会弹出。想验证渲染链路,直接打开仓库自带的示例数据:
pixi run rerun examples/assets/example.rrd发布模式用pixi run rerun-release(产物在target/release/rerun);如果要在 Viewer 里看性能剖析数据,可以加 Tracy 遥测:pixi run rerun-perf。
完成标志:Viewer 窗口弹出,加载example.rrd后能旋转查看场景内容。
检查点 3:三套 SDK 各自打通一个最小示例
Viewer 跑起来只是起点,接下来按语言逐个验证 SDK 链路。
Python SDK:maturin 构建 + 点云示例
pixi run py-build # 调试模式,装进平行的 uv 环境 pixi run py-build-release # 发布模式py-build通过 maturin 把 rerun_py/ 的 Rust 绑定编译进独立的 uv 虚拟环境(构建细节见 rerun_py/README.md)。随后跑官方最小示例 examples/python/minimal/minimal.py:
pixi run uv run examples/python/minimal/minimal.py脚本用 numpy 生成一个 10×10×10 的彩色立方体点云并以rr.init(..., spawn=True)拉起 Viewer,窗口里出现彩色点阵即成功。
Rust SDK:直接 cargo run
示例 crate 在 examples/rust/minimal/src/main.rs,核心就三步:RecordingStreamBuilder::new(...).spawn()创建录制流并拉起 Viewer,grid()生成坐标与颜色网格,rec.log("my_points", ...)写入点云。运行:
cargo run -p minimal终端无报错且 Viewer 弹出同样的彩色点云,Rust 链路即通。
C++ SDK:独立的 cpp 环境
C++ 绑定不能混入默认 pixi 环境(会导致 Linux 上客户端编译失败,见pixi.toml中cpp环境注释),所有cpp-*任务都要带-e cpp:
pixi run -e cpp cpp-build-all # CMake + Ninja 配置并构建 pixi run -e cpp cpp-test # 构建并运行测试二进制配置步骤是cmake -G Ninja -B build/debug -DCMAKE_EXPORT_COMPILE_COMMANDS=ON,CMake 工程入口见 rerun_cpp/CMakeLists.txt。测试通过会看到[ PASSED ]汇总。
完成标志:Python / Rust / C++ 三个示例都在 Viewer 中渲染出了彩色点云,且 C++ 测试全部通过。
检查点 4:编译提速与调试配置
大仓全量编译动辄几十分钟,两个官方认可的加速手段值得先试:
# 1. sccache 缓存(跨项目通用) export RUSTC_WRAPPER=sccache export SCCACHE_CACHE_SIZE="256G" # 2. Cranelift 快速编译后端(仓库自带任务,需 nightly + cranelift 组件) rustup component add rustc-codegen-cranelift-preview --toolchain nightly pixi run rerun-fastrerun-fast用 Cranelift 后端 +dev-fastprofile 编译,产物在target/dev-fast/viewer,迭代 UI 代码时比常规 debug 构建快得多;正式验证仍建议回到pixi run rerun。
调试侧的配置很轻:VS Code 安装rust-analyzer和CodeLLDB两个插件即可,.vscode/launch.json里给target/debug/rerun加一个 lldb 启动配置、给minimal示例加一个 cargo 构建配置,两个条目各 5 行左右,参照仓库现有配置即可。C++ 侧cpp-prepare已经导出compile_commands.json,clangd 会自动拾取。
任务层面,记住三条最常用的:
pixi task list # 查看所有可用任务 pixi run lint # 代码检查(含 Rust/C++/Python 各语言) pixi run fmt # 全语言格式化完成标志:第二次增量编译明显变快;断点可以打进re_viewer或minimal示例代码。
检查点 5:常见卡点速查
| 错误现象 | 原因 | 修复 |
|---|---|---|
linker 'cc' not found | Linux 缺 C 编译器 | sudo apt install build-essential |
fatal error: 'EGL/egl.h' file not found | 缺图形库头文件 | sudo apt install libegl1-mesa-dev libgl1-mesa-dev |
| Windows 链接大量 unresolved external | 未用 MSVC 工具链 | 在"VS 开发者命令提示符"里重新执行编译 |
check-env报版本不符 | rust / pixi 版本漂移 | 按终端提示执行rustup install 1.96.0或pixi self-update --version 0.71.3 |
| Viewer 窗口打不开或警告软件渲染 | 显卡驱动 / WebGPU 支持问题 | 更新 GPU 驱动;无独显环境改走 Web 版:pixi run rerun-web |
若速查表没覆盖你的报错,先用pixi task list找对应任务,再结合 CONTRIBUTING.md 里的 CI 流程定位。
完成标志:你遇到的报错都能在上表或对应任务文档里找到出处。
下一步
- 架构总览与 crate 依赖图:ARCHITECTURE.md
- 更多可运行示例(含 mcap、Lerobot、ROS 等):examples/
- 贡献前必读与 PR 规范:CONTRIBUTING.md
- 代码风格约定:CODE_STYLE.md
【免费下载链接】rerunVisualize, query, and stream to train on multimodal robotics data.项目地址: https://gitcode.com/GitHub_Trending/re/rerun
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考