linux - "exec env -"安装bazel时路径错误

标签 linux shell bazel

当我从源代码编译 bazel 0.5.4 时

./compile.sh遇到这个问题:

error executing shell command: 'cp 'bazel-out/local-opt/bin/src/main/protobuf/command_server_java_grpc_srcs.jar' 'bazel-out/local-opt/bin/src/main/protobuf/command_server_java_grpc_srcs.srcjar'' failed (Exit 127): bash failed: error executing command
  (cd /tmp/bazel_b29JWvqF/out/execroot/io_bazel && \
  exec env - \
  /bin/bash -c 'cp '\''bazel-out/local-opt/bin/src/main/protobuf/command_server_java_grpc_srcs.jar'\'' '\''bazel-out/local-opt/bin/src/main/protobuf/command_server_java_grpc_srcs.srcjar'\''').
/bin/bash: cp: command not found
Target //src:bazel failed to build

我认为这是因为“exec env - ”使用了错误的 $PATH 环境。

当我只运行“exec env -”命令时:

$ exec env - /bin/bash -c 'echo $PATH'
/usr/local/bin:/usr/bin

但是cp命令在/bin/cp下

并且我确认“/bin”在系统的 $PATH 变量中。

我应该修改哪个配置?

最佳答案

您确实需要更改您的 $PATH , 在您的 shell 中,在提示后键入

export PATH=/bin:$PATH;

然而自cp是一个基本命令,我建议修改你的 $PATH在你的.bash_profile/.profile在你的$HOME在重启机器或运行另一个 shell 后保留更改

最后但同样重要的是,您可以添加 -i您的 exec env 选项调用并定义要使用的环境变量列表:

exec env -i PATH=$PATH HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash

关于linux - "exec env -"安装bazel时路径错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48395401/

相关文章:

用于计算圈复杂度的Java工具

linux - RPM Epoch header 是否有任何限制?

linux - 使用curl调用SOAP Web服务

code-coverage - 如何在 Bazel 中合并多个 .dat 文件的覆盖范围

linux - 如何从 Linux 命令行调用 MATLAB 函数?

linux - 测试本地网络上的事件 ssh key

linux - 我下载了 stip-2.0 linux,我尝试执行 "script.sh",但出现此错误 ./bin/stipdet :1: ./bin/stipdet:syntax error :"("unexpected

Linux shell awk : displaying different column values when condition met

macos - 构建@com_google_protobuf 时缺少依赖项//:protobuf_lite

c++ - bazel cc_test test_env 选项