我想尝试使用
因此,我得出结论,bazel的工作目录与此时的工作区根目录不同。
我查看了bazel文档和Google,没有找到指定运行命令的工作目录的明确方法。有人知道正确的做法吗?谢谢!
P.S.: 我正在尝试运行mediapipe iris示例,我使用以下命令来构建该项目(从项目根目录)。
现在,如果我使用
bazel run
命令在工作区根目录下运行一个bazel目标,并希望将相对路径作为参数传递给该目标。但是目前它无法识别此参数,而从控制台手动运行却可以正常工作。因此,我得出结论,bazel的工作目录与此时的工作区根目录不同。
我查看了bazel文档和Google,没有找到指定运行命令的工作目录的明确方法。有人知道正确的做法吗?谢谢!
P.S.: 我正在尝试运行mediapipe iris示例,我使用以下命令来构建该项目(从项目根目录)。
bazel build -c opt --define MEDIAPIPE_DISABLE_GPU=1 mediapipe/examples/desktop/iris_tracking:iris_tracking_cpu
然后,如果我手动运行它(也是从项目根目录),它就可以正常工作:
GLOG_logtostderr=1 bazel-bin/mediapipe/examples/desktop/hand_tracking/hand_tracking_gpu --calculator_graph_config_file=mediapipe/graphs/hand_tracking/hand_tracking_mobile.pbtxt
现在,如果我使用
bazel run
运行它,它会失败:bazel run -c dbg --define MEDIAPIPE_DISABLE_GPU=1 mediapipe/examples/desktop/iris_tracking:iris_tracking_cpu -- --calculator_graph_config_file=mediapipe/graphs/iris_tracking/iris_tracking_cpu.pbtxt
请注意,在图像路径前使用$PWD
并不能解决问题,因为Mediapipe引擎仍然依赖于相对路径和正确的CWD值。