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

Bazelisk成功构建MediaPipe的hello_world示例,但无输出且找不到可执行文件

问题解决步骤

1. 定位可执行文件位置

Bazel构建的二进制文件默认存放在项目根目录的bazel-bin文件夹下,对应目标的路径与构建路径一致。你要找的hello_world可执行文件路径应为:
./bazel-bin/mediapipe/examples/desktop/hello_world/hello_world

也可以用命令快速搜索:

find ./bazel-bin -name "hello_world" -type f -executable

2. 手动执行二进制文件排查输出

先跳过bazel run,单独构建后直接执行文件:

  1. 执行构建命令:
bazelisk build --define MEDIAPIPE_DISABLE_GPU=1 mediapipe/examples/desktop/hello_world:hello_world
  1. 进入对应目录运行:
cd ./bazel-bin/mediapipe/examples/desktop/hello_world
./hello_world

如果此时能输出10行Hello World,说明是bazel run的输出捕获或显示问题;若仍无输出,再排查代码或配置。

3. 修复bazel run的输出显示问题

有时Bazel的警告信息会覆盖程序输出,可将警告重定向以保留标准输出:

bazelisk run --define MEDIAPIPE_DISABLE_GPU=1 mediapipe/examples/desktop/hello_world:hello_world 2>/dev/null

4. 检查日志级别与代码逻辑

MediaPipe的hello_world示例用LOG(INFO)输出内容,若终端默认屏蔽INFO级日志,需手动指定日志级别:

GLOG_minloglevel=0 ./hello_world

同时确认mediapipe/examples/desktop/hello_world/hello_world.cc中的循环逻辑正常,代码应包含:

int main(int argc, char** argv) {
  for (int i = 0; i < 10; ++i) {
    LOG(INFO) << "Hello World!";
  }
  return 0;
}

5. 匹配Bazel与MediaPipe版本兼容性

MediaPipe对Bazel版本有特定要求,可查看官方文档推荐版本,让Bazelisk指定版本运行:

bazelisk run --define MEDIAPIPE_DISABLE_GPU=1 --bazel_version=【官方推荐版本号】 mediapipe/examples/desktop/hello_world:hello_world

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 18:33:17