【问题标题】:Getting error while running mediapipe on macOS; Building C++ command-line example apps在 macOS 上运行 mediapipe 时出错;构建 C++ 命令行示例应用程序
【发布时间】:2021-05-28 07:08:00
【问题描述】:

我正在尝试将 mediapipe 用于大学项目并已安装它,甚至成功运行了 Hello World!在 C++ 示例应用程序中,但是当我尝试构建 C++ 命令行示例时,它给了我错误。

我运行了这个:

bazel build -c opt --define MEDIAPIPE_DISABLE_GPU=1 mediapipe/examples/desktop/hand_tracking:hand_tracking_cpu

我得到的结果是这样的:

调试:/private/var/tmp/_bazel_kanzashaikh/c191ae13e9137350b50f6a19ce94bf21/external/rules_foreign_cc/workspace_definitions.bzl:15:10:警告:此分支已弃用,不再接收更新。请更新到 main 或选择特定的提交以固定在您的工作区中。 信息:构建选项 --compilation_mode 已更改,丢弃分析缓存。 错误:获取存储库时出错:java.io.IOException:存储库的路径是“/usr/local/opt/opencv@3”(绝对:“/usr/local/opt/opencv@3”)但此目录不存在. 错误:/Users/kanzashaikh/development/mediapipe/third_party/BUILD:178:6: //third_party:opencv_binary 依赖于存储库@macos_opencv 中的@macos_opencv//:opencv 无法获取。没有这样的包'@macos_opencv//':存储库的路径是“/usr/local/opt/opencv@3”(绝对:“/usr/local/opt/opencv@3”)但是这个目录不存在。 错误:目标'//mediapipe/examples/desktop/hand_tracking:hand_tracking_cpu'的分析失败;构建中止:分析失败 信息:经过时间:0.194s 信息:0 个进程。 失败:构建未成功完成(加载了 0 个包,237 个目标 co 图)

我该如何解决?

【问题讨论】:

    标签: macos opencv build bazel mediapipe


    【解决方案1】:

    在构建桌面示例之前,您应该设置opencv。同样对于android示例,您应该设置android sdk and ndk。 有一个用于设置 opencv 的内置脚本,您可以执行它。 用于设置 opencv:

    bash setup_opencv.sh
    

    对于 android sdk 和 ndk:

    bash setup_android_sdk_and_ndk.sh
    

    【讨论】:

    • 我运行了 setup_opencv.sh 文件,但现在它抛出另一个错误:“无法完成操作。无法找到支持 apt 的 Java 运行时。请访问 java.com 获取有关安装的信息爪哇。”我已经安装了jdk并且已经设置了所有路径
    • 我遇到了同样的异常;我在 Mac 上,我怀疑这就是问题所在。 Apt 适用于 linux。我正在手动处理 setup_opencv.sh 文件,从“rm -rf /tmp/build_opencsv”开始。到目前为止,它正在工作,但 cmake 行的末尾需要字符 '..' 例外。此外,显然忽略了与 ldconfig 相关的行。但是,我无法映射到 WORKSPACE 和 third_party/opencv_* 的一些编辑。 tl;博士:如果你在 Mac 上,setup_opencv.sh 脚本不会为你开箱即用。也许作者可以提供帮助。
    • 我最好按照google.github.io/mediapipe/getting_started/install.html 的mac 说明进行操作——我必须解决一些自制软件问题(非自制软件的openssl 安装,以及github.com/Homebrew/brew/issues/3228 的权限问题)。一旦我这样做了,我必须编辑 WORKSPACE 文件,以便 opencv_macos 本地存储库的路径是“/usr/local/Cellar/opencv@3”(homebrew 放置它的地方)。希望对您有所帮助。
    • 我按照 mediapipe 的 mac 安装说明进行操作,现在可以正常工作了!在此之后出现与 protoc 版本有关的错误,我通过使用 'brew uninstall --ignore-dependencies protobuf' 解决了这个问题,此后一切顺利。非常感谢您,先生!我已经解决这个问题好几天了,它终于可以工作了!
    • 当我们在做的时候,我能问一下你是否知道一种方法来获取以 txt 格式提取的手部坐标?我正在运行手部跟踪部分,需要它来训练模型。
    猜你喜欢
    • 1970-01-01
    • 2013-09-25
    • 1970-01-01
    • 2016-07-23
    • 1970-01-01
    • 1970-01-01
    • 2014-11-16
    • 2017-10-08
    • 2019-01-08
    相关资源
    最近更新 更多